把泛型作为参数传递
不能实例化泛型数组
理论上Object是所有类的父类,
8.泛型中的父子关系
9.通配符
?用在泛型使用,即为通配符。通配符用来解决泛型无法协变的问题
class Alg{
public static <T> void print1(ArrayList<T> list){
for (T x:list){
System.out.println(x);
}
}
public static <T> void print2(ArrayList<?> list){
for (Object x:list){
System.out.println(x);
}
}
}
通配符的上界不适合写入,适合读取数据
通配符下界:
添加元素的时候,只能添加person或者person的子类;取元素的时候,不能用student取是因为person的子类有很多种,不能用person接收是因为