黑马程序员技术交流社区
标题:
我对于泛型的了解
[打印本页]
作者:
xgm
时间:
2016-3-17 19:53
标题:
我对于泛型的了解
* 目的:深入了解泛型
* 结论:
* 泛型是提供给javac编译器使用的,用来规定容器可以添加的参数类型。
* 但是编译器编译时会去除泛型(这也就是为什么可以通过反射跳过泛型添加其他属性的值)
*/
public class GenelicTest {
public static void main(String[] args) throws Exception{
List<String> list = new ArrayList<String>();
List<Integer> list1 = new ArrayList<Integer>();
System.out.println(list.getClass()==list.getClass()); //结果为true,也就是说他们是同属于一份字节码,字节码不存在泛型。
//list.add(1); //编译错误
list.add("aa");
list.add("bb");
list.getClass().getMethod("add", Object.class).invoke(list, 1); //通过反射跳过泛型添加其他类型的值
for(Object val:list){
System.out.println(val);
}
}
}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2