通過反射的方式獲取類物件的屬性

2021-10-06 11:45:32 字數 547 閱讀 3367

public

class

searchproperty

catch

(classnotfoundexception

| nosuchfieldexception | illegalacces***ception | nosuchmethodexception e)

catch

(invocationtargetexception e)

catch

(instantiationexception e)

}}

hero類就是隨便的乙個類,有乙個name屬性,用private或者public修飾都無所謂,都只是測試getdeclaredfield和getfield的區別。

getdeclaredfield可以查到找private修飾的屬性,而getfield無法查詢到。

雖然getdeclaredfield可以查詢到private修飾的屬性,但是不可以去修改它的值,必須要setaccessible(true)才可以通過getdeclaredfield找到它的值

反射的方式獲取物件中的屬性及其屬性值

之前一直不知道反射到底能用在 直到我看到了公司oa的考勤表設計 day表示每個月的天數,後面的數字表示每月的幾號,a表示上午,b表示下午。比如day01a用以表示當月1號的出勤情況。所以,這個表用以記錄考勤資料的字段共有62個。後來想用這個每天考勤資料,才發現反射真是個好東西。以三天資料為例 如果要...

通過反射獲取類的三種方式

一 通過類全限定名進行獲取class.forname classfullname class c class.forname com.mysql.jdbc.driver 二 通過型別獲取,另外任何資料型別都有乙個靜態的屬性class 型別獲取 class c studentinfo.class 任何...

通過反射獲取實體物件的屬性及對應的屬性值

需求 需要獲取實體物件的屬性及屬性值作為key value形式的namevaluepair引數,用於post請求的引數,為了避免一大段的get 考慮使用反射方式進行設定,示例 如下 public class person public void setname string name public ...