这个问题在这里已经有答案了:
努力理解<?在java中扩展t>通配符(2个答案)
什么是pecs(producer extensed consumer super)(15个答案)
19天前关门了。
这两个函数都在实现shape接口的对象列表上操作,它们都是这样工作的,但是我想知道为什么第一个函数必须有一个通配符才能编译,如果在函数参数中以相同的方式使用通配符,那么第二个函数就不能编译。
public static int describe_all(List<? extends Shape> list){
for(Shape e: list){
e.describe();
}
return list.size();
}
public static void add_to(List<Shape> list){
list.add(new Circle(0.0));
list.add(new Cone(0.0, 0.0));
list.add(new Rectangle(0.0, 0.0));
list.add(new Sphere(0.0));
}
暂无答案!
目前还没有任何答案,快来回答吧!