Java反射--getDeclaredField,和getField

FieldgetField(String name)

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

FieldgetDeclaredField(String name)

返回当前类所有成员变量

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

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

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

voidsetAccessible(boolean flag)

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

static voidsetAccessible(AccessibleObject[] array, boolean flag)

使用单一安全性检查(为了提高效率)为一组对象设置 accessible 标志的便捷方法。