类型通配符
- 表示方法:<?>
- List<?>:表示元素类型未知的List,可以匹配任何类型
- List<?>表示泛型List的父类,但是不能添加元素
//通配符练习
List<?> l = new ArrayList<Object>();
List<?> l2 = new ArrayList<Number>();
List<?> l1 = new ArrayList<Integer>();
类型通配符上限
- 使用场合:我们不希望List<?>是任何泛型List父类,只是某一类型的父类。
- 方式:<? extends 类型>
- 例如:<? extends Number>,只能是Number 类或者其子类。
//类型通配符上限练习
//报错 List<? extends Number> l3 = new ArrayList<Object>();
List&