1.Collection是最基本的集合接口,接口只能被实现不能够被实例化所以第一个编译出错。
2.第二个和第三个是泛型的应用,? 和 Object 差不多,不过还是有差别。
在这种情况下: class<? extends SomeClass> , Object就不能用了
Object是一个具体的类名,而?是一个占位符号,表示任何类型,只要是SomeClass类或者子类就可以。
例如:
List<Object>可以放任何类对象
List<? extends InputStream>就只能放InputStream的实现类了。
|
|