黑马程序员技术交流社区

标题: 关于泛型,这个为什么错误 [打印本页]

作者: zlpiano    时间: 2015-6-15 21:02
标题: 关于泛型,这个为什么错误
ArrayList<Person> al = new ArrayList<Student>( );

父类引用可以指向子类对象,但这句错在哪里了,希望高手详解
作者: Foundmoon    时间: 2015-6-15 21:09
本帖最后由 Foundmoon 于 2015-6-15 21:19 编辑

ArrayList<Student> a=new ArrayList<Student>();
ArrayList<Person> al=new ArrayList(a);

作者: zlpiano    时间: 2015-6-15 21:15
我没写出来,不过是继承关系,这个是毕老师视频里面讲过的,说是错的,但是没有细讲
作者: GoldMan    时间: 2015-6-15 22:11
子类泛型必须要包含父类泛型
作者: liu100chao    时间: 2015-6-15 23:18
请问楼上什么叫做“子类泛型必须要包含父类泛型”,子类本来就是继承父类的肯定包涵啊!父类写在前面,子类写咋后面,父类的引用可以接收子类的对象哪里错了??还是觉得二楼靠谱!!
作者: zlpiano    时间: 2015-6-15 23:40
ArrayList<? extends Person> al = new ArrayList<Student>( );

这是正确写法,但是不理解上面一句为什么是错的,估计是java的规定
作者: hi陈    时间: 2015-6-16 13:33
求解。。。。。
作者: xingfeichen    时间: 2015-6-16 14:35
你这个好像不是父类引用指向子类对象




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2