“Class”類
衆所周知,Java中有一個Object類,是所有Java Class的繼承根源,其內聲明瞭數個應該在所有Java Class中被改寫的methods:
比如:hashCode(),equals(),clone(),toString(),getClass()等方法。
其中getClass()方法返回一個Class Object
Class類比較特殊。它和一般classes一樣繼承自Object,其實體用以表達Java程序運行時的Classes和interfaces,也用來表達enum,array,primitive,Java Types
(boolean,byte,char,short,int ,long,float,double)以及關鍵字void。
當一個類被加載,或當加載器(class loader)的define class()被JVM調用,JVM便會自動產生一個class Object。如果您想借用“修改Java標準庫源代碼”來觀察Class Object的實際生成時機的話,比如:在class的constructor內添加一個println()方法
就不能夠:
因爲Class類 並沒有 public consructor()構造器方法
Class是Reflection起源。
針對任何您想探勘的class,唯有先爲它產生一個class object。接下來才能經由後者喚起爲數十多個的Reflection APIs。