【发布时间】:2013-07-23 22:29:07
【问题描述】:
所以我正在查看一些 Java 代码并偶然发现:
List<? extends SomeObject> l;
基本上,这个列表接受所有属于某种 SomeObject 的对象 - SomeObject 本身或其继承者。但是根据多态性,它的继承者也可以看作 SomeObject,所以这也可以:
List<SomeObject> l;
那么,当第二个选项定义明确且几乎相同时,为什么有人会使用第一个选项?
【问题讨论】:
-
这在Java教程中有很好的解释:docs.oracle.com/javase/tutorial/extra/generics/wildcards.html
标签: java generics polymorphism