黑马程序员技术交流社区
标题:
问一个略深的问题?
[打印本页]
作者:
waylent
时间:
2015-4-13 11:54
标题:
问一个略深的问题?
反射的原理是什么?
(不是说反射API怎么用,而是反射API访问了内存中的什么对象的什么成员,这个对象又是从哪里来的?)
(还是说反射API是直接访问的方法区,直接就读出来了?)
(反射和累加器有什么关系?)
作者:
fantacyleo
时间:
2015-4-13 13:13
反射api访问的是字节码对象(Class类的实例)。这对象是类被加载时由类加载器创建的。类的加载就是把class文件中的内容进行解析并把相关信息存在方法区。class文件中包含了成员变量、方法、构造函数的信息,所以你拿到Class类的对象也就能够访问到成员变量、方法、构造函数了
作者:
sisel
时间:
2015-4-13 16:19
反射的原理是RTTI,运行时类型识别,通过JVMapi来运行时获取类的信息,组装实例或进行修改,java1.5的Instrumentation甚至可以运行时修改类的实现(即bytecode)
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2