十年網(wǎng)站開發(fā)經(jīng)驗 + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊
量身定制 + 運(yùn)營維護(hù)+專業(yè)推廣+無憂售后,網(wǎng)站問題一站解決
怎么在java中利用反射訪問成員變量的值?相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。

10余年的安順網(wǎng)站建設(shè)經(jīng)驗,針對設(shè)計、前端、開發(fā)、售后、文案、推廣等六對一服務(wù),響應(yīng)快,48小時及時工作處理。全網(wǎng)營銷推廣的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動調(diào)整安順建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計,從而大程度地提升瀏覽體驗。創(chuàng)新互聯(lián)建站從事“安順網(wǎng)站設(shè)計”,“安順網(wǎng)站推廣”以來,每個客戶項目都認(rèn)真落實執(zhí)行。
一 代碼
import java.lang.reflect.*;
class Person
{
private String name;
private int age;
public String toString()
{
return "Person[name:" + name +
" , age:" + age + " ]";
}
}
public class FieldTest
{
public static void main(String[] args)
throws Exception
{
// 創(chuàng)建一個Person對象
Person p = new Person();
// 獲取Person類對應(yīng)的Class對象
Class personClazz = Person.class;
// 獲取Person的名為name的成員變量
// 使用getDeclaredField()方法表明可獲取各種訪問控制符的成員變量
Field nameField = personClazz.getDeclaredField("name");
// 設(shè)置通過反射訪問該成員變量時取消訪問權(quán)限檢查
nameField.setAccessible(true);
// 調(diào)用set()方法為p對象的name成員變量設(shè)置值
nameField.set(p , "Yeeku.H.Lee");
// 獲取Person類名為age的成員變量
Field ageField = personClazz.getDeclaredField("age");
// 設(shè)置通過反射訪問該成員變量時取消訪問權(quán)限檢查
ageField.setAccessible(true);
// 調(diào)用setInt()方法為p對象的age成員變量設(shè)置值
ageField.setInt(p , 30);
System.out.println(p);
}
} 二 運(yùn)行
E:\Java\瘋狂java講義\codes\18\18.4>java FieldTest
Person[name:Yeeku.H.Lee , age:30 ]
看完上述內(nèi)容,你們掌握怎么在java中利用反射訪問成員變量的值的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!