List<? extends Integer> ints= new ArrayList<Integer>();
ints.add(3);//error
我仍然不明白它是如何工作的。 问题:
是什么意思CAP#1
?它是参考类型吗?我认为,不,因为CAP#1不从Object
继承。我们可以写ints.add(null);//OK
并且我们没有编译时错误。但我们不能写null instanceof CAP#1;//compile-time error
。为什么我们不能实例化CAP#1
:
CAP#1 c= new CAP#1();
从CAP#1
看到了什么?
[无法将一个ModuleInfo对象添加到ArrayList <?扩展ModuleInfo>](http://stackoverflow.com/questions/13499928/cant-add-a-moduleinfo-object-to-arraylist-extends-moduleinfo) –
@Rohit Jain我有以下问题:编译器是否知道方法'布尔添加(?扩展整数)'参数的类型'?扩展了由“CAP#1”定义的Integer,其中CAP#1在这种情况下是一种特殊类型,可能只有一个实例 - null?这个问题是否正确?如果正确,请回答。 –