我定义一个父类Line和一个子类Plane,再定义一个测试类Test,在其main主方法下写
List<? extends Line> al=new ArrayList<Plane>();
在al下点add方法看到的是add(null arg0) boolean
只可以向al中加入null
我用的是MyEclipse5.5 jdk 5.0
为什么是null,不是Plane?
List<? extends Line> al=new ArrayList<Plane>();
在al下点add方法看到的是add(null arg0) boolean
只可以向al中加入null
我用的是MyEclipse5.5 jdk 5.0
为什么是null,不是Plane?
类型不匹配呀
使用通配符不能使用 add()方法,他只是多态的一种。
你这样想就行了, al 里面只能有一个类型。 如果 可以add()的话。
那么,问题来了, 只要是 line的 子类 或者 line 本身都可以加进去,al里面什么都有。那还叫什么泛型啊
直接List al=new ArrayList(); 不就得了,还要这么麻烦干嘛。
我也是自己自学的,如果说的不对,请楼下的继续指正。