Posted on 2009-04-17 19:42
Prayer 閱讀(1580)
評論(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的對象。