关于通配符限定上下边界的问题:
ArrayList<? extends Number> x = new ArrayList<Number>();
上面这这么定行吗?为什么?
ArrayList<? extends Number> x = new ArrayList<Integer>();
x =new ArrayList<Number>();
上面这么写也行吗,它和第一种写法(ArrayList<? extends Number> x = new ArrayList<Number>();)有保区别?
ArrayList<Number> y = x;
为什么这么写就不行?
|