我是新来的Java,并试图从Java泛型和集合书中了解下面的好奇语法..(我广泛使用C++模板,因此可以声称了解泛型编程的基础知识和可能的陷阱):“?extends E”和“T extends E”之间有什么区别?
interface Collection <E> {
...
public boolean addAll(Collection<? extends E> c);
...
}
为什么不能在上面写为:
interface Collection <E> {
...
public boolean addAll(Collection<T extends E> c);
...
}
的区别是什么?这仅仅是语言限制还是在引擎盖下有什么区别?
你的意思是'公众布尔addAll(收集 C);' –
2013-02-18 18:44:46
我低估了这个把你的注意力引向我以前的评论。 – 2013-02-18 18:50:23
现在已经修复。 – 2013-02-18 18:57:03