通過object
類中的getclass()
方法;
通過靜態方法class.forname("全類名")
;
通過類字面常量class.class
。
三種獲取class型別的例項的方法
方法1:通過object
類中的getclass()
方法返回乙個class
型別的例項
示例如下:
person person = new person();class clazz = person.getclass();
方法2:通過靜態方法class.forname("全類名")
獲取類名對應的class
物件
class.forname()
方法原型:
public
static class<
?>
forname
(string classname)
throws classnotfoundexception
若無法根據類路徑classname
找到對應的.class
檔案會丟擲classnotfoundexception
異常,因此使用forname()
方法需要捕獲異常或向上丟擲異常。
示例如下:
class clazz
= null;
string classname =
"step1.person"
;try
catch
(classnotfoundexception e)
方法3:通過類字面常量class.class
獲取
示例如下:
class clazz
= person.
class
;
該方法不僅更簡單,而且更安全,因為它在編譯時就會受到檢查(因此不需要置於try
語句塊中)。並且它**了對forname()
方法的呼叫,所以更高效。 JAVA例項化class的三種方式
不多說 直接上例子 package org.lxh.demo15.getclassdemo class x public class getclassdemo02 catch classnotfoundexception e c2 new x getclass 通過object類中的方法例項化 c3...
反射獲取Class物件的三種方式
test void contextloads1 throws exception 反射獲取類中的方法 method declaredmethods userclass.getdeclaredmethods for method declaredmethod declaredmethods 反射獲取類...
2 1 2 06 獲取class物件的三種方式
獲取class物件的方式 1.class.forname 全類名 將位元組碼檔案載入進記憶體,返回class檔案物件 在source源 階段的呼叫 2.類名.class 通過類名的屬性class獲取 在class類物件階段的呼叫 3.物件名.getclass getclass 方法是object類中...