黑马程序员技术交流社区
标题:
什么是反射?有几种方法加载字节码?分别是什么? 怎么...
[打印本页]
作者:
satana
时间:
2016-5-25 18:21
标题:
什么是反射?有几种方法加载字节码?分别是什么? 怎么...
理解为一个解剖重构的过程。动态加载一个类,获得这个类的字节码文件对象,再通过这个字节码文件对象去操作类中的各个成员变量。
3个方法加载字节码。
1)创建对象,然后调用对象的getClass()方法。
2)每个数据类型都有它的静态属性 类名.class。
3) forName()方法。Class clazz = class.forName(“类名”);
当一个类中成员是私有的, 必须通过getDeclaredMethod,getDeclaredField, getDeclaredConstructor 强制取出方法来调用,并调用setAccessible(true);然后才能用。这个就是暴力反射
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2