问答详情
源自:4-9 学生选课---应用泛型管理课程 Ⅰ

关于封装List的问题

http://img2.mukewang.com/5e6071f900018b6412840934.jpg

首先我在TestGeneric里面封装了一个List<Course> courses属性,设置了getter和setter方法

然后也在这个类的main方法里创建了TestGeneric类的对象tg

http://img3.mukewang.com/5e6071f90001cb0d12240846.jpg

现在我想在ListTest这个类里面的方法里把cr1加入到List<Course> courses,产生如下问题:

  1. 直接引用我在TestGeneric类里创建的tg对象不成功,是不是一个对象不能在别的类里被引用呢?

  2. 像我图二圈出来的这样运行不成功是为什么呀?而且我在TestGeneric里面遍历List<Course> courses也没有我在ListTest里加入的cr1?(getId()是因为我把Course对象的id属性封装了) 所以到底怎么把ListTest里的cr1加入到courses里呢?


提问者:奶尤糯米团子 2020-03-05 11:35

个回答

  • weixin_慕圣1412646
    2020-03-07 17:49:23

    第一个问题没太看明白。

    第二个问题我尝试了一下,是你黑圈内的三行代码,前两行都没问题,第三行我改了一下,可以执行。如下


    Course cr2 = new Course("2","C++");

    TestGeneric tg = new TestGeneric();    //跟你的一样

    tg.getCourseslist().add(cr2);                //一样

    System.out.println(tg.getCourseslist().get(0).name);    //不同