如何从反射访问中过滤特定字段?

时间:2017-04-18 18:43:48

标签: java reflection classloader securitymanager

Class.java Java如何限制对 Class.java 中字段 private final ClassLoader classLoader 的反射访问? (如屏幕截图中的文档所示)

我找到了一个link,它描述了一个SecurityManager可用于限制反射访问,但我该如何使用它。请详细解释。

之后我想限制只访问特定字段。

找到similar question 但是想知道如何在我的课堂上实现这一点,并且在问题中已经问过为什么在jdk中实现了这个?我还可以使用反射打破这个链吗?

1 个答案:

答案 0 :(得分:1)

它受JVM保护,不受您无法使用的特殊机制的保护。即使您拥有所有权限,也无法通过反射访问它,尽管通常可以访问私有字段。

对于我们凡人,我们所能做的最好的事情就是使用阻止反射访问的SecurityManager,更重要的是设计我们的软件,这样它就不会依赖Java来保密。

回答你的编辑,因为我显然不清楚(?)

"我怎样才能在课堂上实现这一点?" 你不能。

"为什么在jdk中实现?" 所以你不能用反射来绕过它。

"我可以使用反射打破这个链吗?" 不,这就是重点。