動(dòng)態(tài)獲取Java類屬性

知道屬性名稱,可以用java 反射機(jī)制動(dòng)態(tài)獲取屬性值

public class People {
    private String name;
    private Integer age;

    /* 省略getter and setter*/
}

public class JavaReflectTest {
    public static void main(String[] args) {
        People people = new People();
        people.setName("dgq");
        people.setAge(26);

        try {
            Field field = people.getClass().getDeclaredField("name");
            field.setAccessible(true);
            System.out.println(field.get(people));
        } catch (Exception e) {
            e.printStackTrace();
        }

    }
}

如果是用groovy 就特別簡(jiǎn)單了

class People {
    String name;
    Integer age;
}

class ReflecTest {

    public static void main(String[] args) {
        People people = new People()
        people.name = "dgq"
        people.age = 26

        println(people.getProperty("name"))

        String property = "age";
        println(people."$property")

    }
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,724評(píng)論 19 139
  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,388評(píng)論 25 708
  • 前言 人生苦多,快來(lái) Kotlin ,快速學(xué)習(xí)Kotlin! 什么是Kotlin? Kotlin 是種靜態(tài)類型編程...
    任半生囂狂閱讀 26,762評(píng)論 9 118
  • 1.一生中對(duì)您影響最大的一個(gè)人是誰(shuí)?影響是什么?一下子能想到的與他之間的一件事是什么。 父親。教我正直做人,踏實(shí)做...
    豆角燜面閱讀 182評(píng)論 0 0
  • 哪一刻,讓你感覺(jué)到最無(wú)力? 當(dāng)你覺(jué)得父母老了,自己卻還處在平庸的生活狀態(tài)。 當(dāng)年,我們?cè)蚋改冈S下過(guò)豪言壯語(yǔ): 等...
    Indy閱讀 280評(píng)論 0 0

友情鏈接更多精彩內(nèi)容