黑马程序员技术交流社区

标题: 什么是反射?有几种方法加载字节码?分别是什么? 怎么... [打印本页]

作者: 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