Java反射--getDeclaredField()和getField()

 Field getField(String name)  

返回当前类以及所继承的类的所有public修饰的成员变量

 Field getDeclaredField(String name)  

返回当前类所有成员变量

如果想要获取父类的所有成员变量(主要是为了拿到私有成员变量,只想获取公有成员变量可以直接使用getField)

可以通过取得当前类的父类的class对象再调用getDeclaredField方法

想要拿到私有成员变量的值

 void setAccessible(boolean flag)  

需要调用field的setAccessible方法,并设为true

static void setAccessible(AccessibleObject[] array, boolean flag)
          使用单一安全性检查(为了提高效率)为一组对象设置 accessible 标志的便捷方法。
原文地址:https://www.cnblogs.com/microcat/p/6306767.html