Field獲取java類中的成員變數名

2021-08-03 17:14:34 字數 2197 閱讀 6665

partnerdto partnerdto;

mappartnercustomermap = partnerdto.getcustomdata();

field fields = partnerdto.getclass().getdeclaredfields();

if(fields != null)

}}

提供有關類或介面的單個欄位的資訊,以及對它的動態訪問許可權。

getfields(公共類的)

//獲取類的位元組碼檔案物件    

class c = class.forname("zl_relfect_01.person");

//獲得該物件的公共成員變數

field f = c.getfields();

//遍歷

for(field fie : f)

getdeclaredfields(所有型別的)

//獲取類的位元組碼檔案物件    

class c = class.forname("zl_relfect_01.person");

//獲取該類的所有成員變數

field f = c.getdeclaredfields();

for(field fie : f)

getfield (公共類的)

//獲取類的位元組碼檔案物件    

class c = class.forname("zl_relfect_01.person");

//獲取單個公共的成員變數

field f = c.getfield("address");

system.out

.println(f);

getdeclaredfield (所有型別的)

//獲取類的位元組碼檔案物件    

class c = class.forname("zl_relfect_01.person");

// 獲取單個成員變數(所有型別)

field f = c.getdeclaredfield("name");

system.out

.println(f);

//獲取類的位元組碼檔案物件

class c = class.forname("zl_relfect_01.person");

//通過無參構造建立物件

constructor con = c.getconstructor();

object obj = con.newinstance();

//獲取私有成員變數name,並對它進行賦值

//首先獲取私有成員變數name

field newname = c.getdeclaredfield("name");

//**成員變數name是私有的,所以得先取消語言訪問檢查**

// public void setaccessible(boolean flag)

newname.setaccessible(true);

//set(object obj,object value):將指定物件變數上此 field 物件表示的字段設定為指定的新值。

//給obj裡面的newname賦值為張三

newname.set(obj, "張三");

system.out.println(obj);//person [name=張三, age=0, address=null]

//獲取預設型別成員變數age,並對它進行賦值

//獲取age變數,並賦值

field newage = c.getdeclaredfield("age");

//取消語言訪問檢查

newage.setaccessible(true);

//給age賦值

newage.set(obj, 13);

system.out.println(obj);

//獲取公共成員變數address,並對它賦值

//獲取address物件,並賦值

field newaddress = c.getdeclaredfield("address");

newaddress.set(obj, "家鄉");

system.out.println(obj);

參考:

java 反射機制(Field)對類的字段進行操作

設定變數setfield field userinfo.getclass getdeclaredfield name 私有變數set需呼叫此方法 field.setaccessible true 字元型別名稱 string fieldtypename field.gettype get name 暫...

mysql 中的field 排序函式

field 函式 是將查詢的結果集按照指定順序排序。格式 field str,str1,str2,str3,什麼時候用 想讓某幾個特定的字段值放在最後,用field 函式。解釋 str是欄位名字,字串str1,str2,str3等等,是該字段的值。函式意思 匹配到str1,將其放到結果集最後返回。詳...

JAVA 類檔案獲取路徑

windows linux 下通用。當前工程的目錄是 d www jsp projectabc,可以使用以下3個方法 1 在工程中的任何乙個 類中,可以這樣獲取路徑 通過 this.getclass getclassloader getresource getpath 返回的是編譯之後的classe...