黑马程序员技术交流社区
标题:
反射中老说到字节码 啥意思 呢 谁给详细讲讲啊
[打印本页]
作者:
沙漠里的小鱼
时间:
2012-2-9 16:25
标题:
反射中老说到字节码 啥意思 呢 谁给详细讲讲啊
反射中老说到字节码 啥意思 呢谁给详细讲讲啊
作者:
余海龙
时间:
2012-2-9 16:30
JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;
对于任意一个对象,都能够调用它的任意一个方法和属性;
这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。
作者:
林铁柱
时间:
2012-2-9 17:22
就是.class文件,Class的实例对象不能主动创建,当一个类被加载,或当加载器的defineClass()被JVM调用,JVM 便自动产生一个Class实例对象。一下是部分源代码:
public final
class Class<T> implements Serializable,
java.lang.reflect.GenericDeclaration,
java.lang.reflect.Type,
java.lang.reflect.AnnotatedElement {
private Class() {} //构造方法为私有的
public String toString() {
return ( isInterface() ? "interface " :
(isPrimitive() ? "" : "class "))
+ getName();
}
作者:
成果
时间:
2012-2-9 23:44
字节码就是我们在执行javac XX.java时候生成的一个XX.class文件。把用java编写的包括其modifiers(诸如public, static 等)、superclass(例如Object)、实现之interfaces(例如Cloneable),也包括fields和methods的所有信息,都存进.class文件当中了。然后通过命令java xxx解析执行class文件。
作者:
侯丽星
时间:
2012-2-14 18:52
字节码:即类被编译后,产生的.class文件被加载到内存后的内容。
一个类被类加载器加载到内存中,占用一片存储空间,这个空间里面的内容就是类的字节码,不同类的字节码是不同的,所以他们在内存中的内容也是不同的。这一个个的空间可分别用一个个的对象来表示,这些对象显然具有相同的类型,这个类型就是Class类。
得到每个字节码对应的实例对象的方法有3种:
1. 类名.class,例如:Date.class
2. 对象.getClass(),例如:New Date().getClass()
3. Class.forName("类名"),例如:Class.forName("java.util.Date")
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2