类型通配符

为了表示各种泛型List的父类,可以使用类型通配符

类型通配符:<?> List<?>:表示元素类型未知的List,它的元素可以匹配任何的类型 这种带通配符的List仅表示它是各种泛型List的父类,并不能把元素添加到其中

如果说我们不希望List<?>是任何类型List的父类,只希望它代表某一类泛型List的父类,可以使用类型通配符的上限 1、类型通配符上限:<?extends 类型> 2、List<? extends Number>:表示的类型是Number或者其子类型。注意不能表示Number的父类型,因为这行做了上限的限定

除了可以指定类型通配符的上限,我们也可以指定类型通配符的下限,如下 1、类型通配符下限:<?super 类型> 2、List<? super Number>:表示的类型是Number或者其父类型。注意不能表示Number的子类型,因为这行做了下限的限定

 

类型通配符的练习