亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

java getdeclaredfields怎樣遍歷字段

小樊
81
2024-11-26 14:48:22
欄目: 編程語言

在Java中,你可以使用getDeclaredFields()方法來獲取一個類的所有聲明字段(包括私有、受保護、默認(包)訪問和公共字段,但不包括繼承的字段)。然后,你可以遍歷這些字段并對其進行操作。以下是一個示例:

import java.lang.reflect.Field;

public class Main {
    public static void main(String[] args) {
        MyClass obj = new MyClass();
        printObjectFields(obj);
    }

    public static void printObjectFields(Object obj) {
        Class<?> clazz = obj.getClass();
        Field[] fields = clazz.getDeclaredFields();

        for (Field field : fields) {
            // 設置可訪問性,以便訪問私有字段
            field.setAccessible(true);

            // 獲取字段名和字段值
            String fieldName = field.getName();
            Object fieldValue;
            try {
                fieldValue = field.get(obj);
            } catch (IllegalAccessException e) {
                fieldValue = "Error: Unable to access field.";
            }

            System.out.println("Field name: " + fieldName + ", Field value: " + fieldValue);
        }
    }
}

class MyClass {
    private String privateField = "I am a private field";
    protected String protectedField = "I am a protected field";
    String defaultField = "I am a default field";
    public String publicField = "I am a public field";
}

在這個示例中,printObjectFields()方法接受一個對象作為參數,然后使用getDeclaredFields()方法獲取該對象的所有聲明字段。接下來,我們遍歷這些字段,設置可訪問性以便訪問私有字段,然后獲取字段名和字段值,并將它們打印出來。

0
建瓯市| 嘉祥县| 荥经县| 长治县| 深泽县| 宜兰县| 兴仁县| 吉水县| 靖州| 阳江市| 庄河市| 万源市| 福建省| 嵩明县| 新沂市| 三亚市| 海宁市| 巴南区| 称多县| 大同县| 砀山县| 瑞金市| 莱芜市| 修武县| 延津县| 彭泽县| 浠水县| 微山县| 吉林市| 台安县| 罗城| 合阳县| 福贡县| 金堂县| 黎川县| 杭锦旗| 佛学| 得荣县| 扎兰屯市| 牡丹江市| 滦平县|