黑马程序员技术交流社区

标题: 如何理解泛型的补偿? [打印本页]

作者: 齐宁宁    时间: 2014-10-22 15:58
标题: 如何理解泛型的补偿?
使用泛型,如何知道获取的元素类型而不用强制转换的?泛型的补偿又是怎么理解的啊?
作者: 践行渐远    时间: 2014-10-22 17:20
楼主你好,我来尝试回答一下:
    泛型擦除以后,类生成的class文件中,是不含有泛型的。在重新加载时,为了解决强转出现的问题,引入了泛型补偿机制。即在类加载器的基础上,编写了一个补偿程序,那么当类加载运行时,通过反射技术可以获取元素的类型进行转换动作,就需要使用者再进行强制转换了。
例如:对于“字符串”类型的元素 "aa",可以通过
Class clazz = "aa".getClass();//获取该元素的字节码文件
clazz.getName();//获取该元素的类型
作者: 齐宁宁    时间: 2014-10-23 08:11
谢谢啊!
作者: 郑飞    时间: 2014-10-25 01:23
....原来这背后还有个"补丁"啊




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2