温馨提示×

java reflection如何访问私有字段

小樊
82
2024-07-20 19:12:00
栏目: 编程语言

要访问私有字段,可以使用Java反射机制中的Field类的setAccessible方法来打开私有字段的访问权限。下面是一个示例代码:

import java.lang.reflect.Field;

public class Main {
    private String privateField = "private";

    public static void main(String[] args) throws NoSuchFieldException, IllegalAccessException {
        Main obj = new Main();

        Field field = Main.class.getDeclaredField("privateField");
        field.setAccessible(true);

        String value = (String) field.get(obj);
        System.out.println("Private field value: " + value);
    }
}

在上面的代码中,我们首先使用Main.class.getDeclaredField("privateField")方法获取私有字段privateField,然后调用field.setAccessible(true)方法打开私有字段的访问权限。最后使用field.get(obj)方法获取私有字段的值。

0