三種獲取Class型別的例項的方法

2021-10-21 19:59:12 字數 1178 閱讀 2692

通過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類中...