通过这样的回答,我收集到如果没有设置您不能访问私有字段setAccessible(true)。我可以通过确定一个字段是否公开isAccessible()。但是,我如何确定它是公共的还是私人的?
您可以Field.getModifiers()用来获取字段修饰符。然后,您可以使用Modifier.is*找出:
int modifiers = field.getModifiers();
if(Modifier.isProtected(modifiers)) {
// protected
}
else if(Modifier.isPrivate(modifiers)) {
// private
}
Run Code Online (Sandbox Code Playgroud)