通过反射获取静态字段的值

时间:2019-04-10 12:18:37

标签: java reflection

以下类反映出Test类的字段名称:

public class MainClass {

    public class Test {
        public static final int field1 = 1;
        public static final int field2 = 2;
        public static final int field3 = 3;
    }

    public static void main(String[] args) {

        Field[] fields = Test.class.getDeclaredFields();

        for (Field field: fields) {
            System.out.println(field.getName());
        }
    }

}

此打印:

field1 
field2 
field3 
this$0

但是我还需要打印初始化值(过滤this$0),例如:

field1 - 1 
field2 - 2 
field3 - 3

getInt(Object o)中有一个Field方法,但是由于没有实例(字段是静态的),因此无法使用它。有什么想法吗?

0 个答案:

没有答案