溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

怎么用java反射獲取對象

發(fā)布時間:2022-05-11 15:19:37 來源:億速云 閱讀:324 作者:iii 欄目:編程語言

這篇“怎么用java反射獲取對象”文章的知識點(diǎn)大部分人都不太理解,所以小編給大家總結(jié)了以下內(nèi)容,內(nèi)容詳細(xì),步驟清晰,具有一定的借鑒價(jià)值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“怎么用java反射獲取對象”文章吧。

本教程操作環(huán)境:windows7系統(tǒng)、java10版,DELL G3電腦。

1、使用對象調(diào)用Object的getClass方法

獲取字節(jié)碼對象的方法:要使用這種方法,必須明確具體類別,并創(chuàng)建對象。

public static void getClassObject_1() {
 
Person p = new Person();
Class<?> clazz = p.getClass();
 
Person p1 = new Person();
Class<?> clazz1 = p1.getClass();
 
System.out.println(clazz == clazz1);
}

2、調(diào)用屬性

任何數(shù)據(jù)類型都有靜態(tài)屬性。class可以獲得相應(yīng)的class對象。比較簡單,但是要明確使用類別中的靜態(tài)成員。

public static void getClassObject_2() {
 
Class<?> clazz = Person.class;
 
Class<?> clazz1 = Person.class;
System.out.println(clazz == clazz1);//true都是Person類的字節(jié)碼
}

3、采用forName()方法

可以通過給定類別的字符串名來獲得,并且可以更加擴(kuò)展。但是在Class類中完成。這種方法是forName.這種方法只要有名字就可以,更加方便,更加可擴(kuò)展。

public static void getClassObject_3() throws ClassNotFoundException {
 
String className = "com.ldb.po.Person";
 
Class<?> clazz = Class.forName(className);
 
System.out.println(clazz);
}

以上就是關(guān)于“怎么用java反射獲取對象”這篇文章的內(nèi)容,相信大家都有了一定的了解,希望小編分享的內(nèi)容對大家有幫助,若想了解更多相關(guān)的知識內(nèi)容,請關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI