List和List<Object>有区别么?
RT~
还有我不太明白原始类型的意思。
List<T>被擦除的时候是擦除成List?还是List<Object>?
[解决办法]
类型擦除,就是变成jdk1.4之前的样子
[解决办法]
不一样,一个是泛型,一个是Object,后者还可能要类型转换,容易出错。
[解决办法]
public void func(List<String> list){}public void func(List<Integer> list){ }
[解决办法]
public static void main(String[] args)throws Exception { List<Integer> list = new ArrayList<Integer>(); list.add(100); Method method = list.getClass().getDeclaredMethod("add",Object.class); method.invoke(list, "hello"); System.out.println(list); }//这个例子说明,运行时,jvm只是知道List里面装的是Object,虽然定义的时候规定了只能往里面放Integer,实际上我们还是可以往里面放String。