Posted on 2009-04-17 19:42
Prayer 阅读(1562)
评论(1) 编辑 收藏 引用 所属分类:
面向对象
前几天朋友问一个问题Class.class.getClass(),只知道是java的反射机制。具体讲不清楚,上网查了一下与大家共享:
Class与class都继承自Object,class实体来代表java运行时的class和interface等等,
Class.class就是得到或者生成这个Class类的Class Object;
而.getClass()本就是返回一个类对应的Class Object ,
所以Class.class.getClass()最后还是返回Class Object
总结如下(转):
Class类是为了保存JAVA虚拟机运行时(RTTI)对所有对象进行类型识别的信息而设立的.
当然Class也是继承自Object类的,每个类都有Class对象,想得到一个类的Class对象共有三种方法.
1:调用getClass()
Employee emp;
Class cls=emp.getClass();
2:静态方法forName(String )
String className="Employee";
Class cls=Class.forName(className);
3:class成员变量法
Class cls=Employee.class;
Class.class.getClass()的意思应该很清楚了
Class.class返回一个Class类的Class对象,
在调用getClass()又一次返回Class的对象。