如何在没有 getter 的情况下从另一个 class 访问私有字段?
How do you access a private field from another class without a getter?
是否可以使用 Java 反射读取私有字段?
您可以使用 Apcache commons FieldUtils
FieldUtils.readField(object, myfield, true);
否则您可以使用链接副本中描述和回答的反射。所以你可以在调用你的方法之前设置setAccessible(true)
。
m = object.getClass().getDeclaredMethod(mymethod);
m.setAccessible(true);
m.invoke(object);
是否可以使用 Java 反射读取私有字段?
您可以使用 Apcache commons FieldUtils
FieldUtils.readField(object, myfield, true);
否则您可以使用链接副本中描述和回答的反射。所以你可以在调用你的方法之前设置setAccessible(true)
。
m = object.getClass().getDeclaredMethod(mymethod);
m.setAccessible(true);
m.invoke(object);