java泛型
import java.util.*;
class Tiger{}
public class P378 {
public static void main(String[] args) {
//为什么可以这么做
List<String> ls=new Test1().makeArrayList(new Tiger());
}
}
class Test1<T>{
public List<T> makeArrayList(T t){
List<T> list=new ArrayList<T>();
list.add(t);
return list;
}
}
List<String> ls=new Test1().makeArrayList(new Tiger());这句为什么编译器不会报错
然而如果单独使用List<String> l=new ArrayList<T>();这样会报错 (其中T为泛型占位符)
希望大虾们帮忙解决