久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

怎么用java反射獲取屬性名和值

145次閱讀
沒有評論

共計(jì) 1056 個(gè)字符,預(yù)計(jì)需要花費(fèi) 3 分鐘才能閱讀完成。

要使用 Java 反射獲取屬性名和值,可以按照以下步驟進(jìn)行操作:

  1. 獲取類的 Class 對象:

    Class clazz = object.getClass();
    
  2. 獲取類的所有屬性:

    Field[] fields = clazz.getDeclaredFields();
    
  3. 遍歷屬性數(shù)組,獲取屬性名和值:

    for (Field field : fields) {// 設(shè)置屬性可訪問,否則私有屬性無法獲取 
        field.setAccessible(true);
        String fieldName = field.getName();
        Object fieldValue = field.get(object);
        System.out.println(" 屬性名:" + fieldName + ",屬性值:" + fieldValue);
    }
    

完整示例代碼如下所示:

import java.lang.reflect.Field;

public class ReflectionExample {public static void main(String[] args) {// 創(chuàng)建對象 
        Person person = new Person("Tom", 18, "Male");

        // 獲取類的 Class 對象 
        Class clazz = person.getClass();

        // 獲取類的所有屬性 
        Field[] fields = clazz.getDeclaredFields();

        // 遍歷屬性數(shù)組,獲取屬性名和值 
        for (Field field : fields) {// 設(shè)置屬性可訪問,否則私有屬性無法獲取 
            field.setAccessible(true);
            String fieldName = field.getName();
            Object fieldValue;
            try {fieldValue = field.get(person);
                System.out.println(" 屬性名:" + fieldName + ",屬性值:" + fieldValue);
            } catch (IllegalAccessException e) {e.printStackTrace();
            }
        }
    }
}

class Person {private String name;
    private int age;
    private String gender;

    public Person(String name, int age, String gender) {this.name = name;
        this.age = age;
        this.gender = gender;
    }
}

運(yùn)行該示例代碼,就可以獲取到 Person 對象的所有屬性名和值。

丸趣 TV 網(wǎng) – 提供最優(yōu)質(zhì)的資源集合!

正文完
 
丸趣
版權(quán)聲明:本站原創(chuàng)文章,由 丸趣 2023-12-13發(fā)表,共計(jì)1056字。
轉(zhuǎn)載說明:除特殊說明外本站除技術(shù)相關(guān)以外文章皆由網(wǎng)絡(luò)搜集發(fā)布,轉(zhuǎn)載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 涿州市| 望城县| 泾川县| 贵港市| 唐海县| 资兴市| 成武县| 鸡东县| 丁青县| 德州市| 甘谷县| 安远县| 江孜县| 巴彦县| 拉萨市| 瑞昌市| 南部县| 鄂尔多斯市| 宁陵县| 霍城县| 哈尔滨市| 安仁县| 钦州市| 安远县| 浮梁县| 竹溪县| 井研县| 仁化县| 钟山县| 通许县| 镇江市| 盐池县| 比如县| 婺源县| 右玉县| 西宁市| 东平县| 大城县| 华池县| 阜阳市| 罗甸县|