91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

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
阿鲁科尔沁旗| 道真| 扬中市| 山东省| 武义县| 兰溪市| 青浦区| 邯郸县| 武功县| 南乐县| 洛南县| 荔波县| 辽阳市| 芒康县| 乌兰察布市| 潞西市| 静乐县| 贵溪市| 永春县| 台东县| 北宁市| 建宁县| 夹江县| 白山市| 天气| 信丰县| 通榆县| 鹿邑县| 隆安县| 张掖市| 清水河县| 石嘴山市| 左贡县| 即墨市| 凉山| 喜德县| 抚顺县| 高尔夫| 东明县| 朔州市| 彭泽县|