这是我的程序。我不确定为什么会出现编译时错误。
import java.util.ArrayList;
import java.util.List;
public class Test {
public static void main(String[] args) {
List< ? extends Number > list = new ArrayList<Integer>();
list.add(6); // Compile Time Error
System.out.println(list);
}
}
但是以下程序可以正常工作
import java.util.ArrayList;
import java.util.List;
public class Test {
public static void main(String[] args) {
List< ? super Number > list = new ArrayList<Number>();
list.add(6);
System.out.println(list);
}
}
来自 Eclipse 的错误:
这是来自 Eclipse 的错误描述:
List 类型中的方法 add(int, capture#1-of ? extends Number) 不适用于参数 (int)