反射有获取不到的字段吗?

2018-12-20 23:07:54 +08:00
 ClancyH

java.lang 包里面的 System 类有个字段 private static volatile SecurityManager security;用反射获取这个字段的时候抛出异常 NoSuchField,先不谈 get 方法获取,单纯问下为什么反射无法获取这个字段

3042 次点击
所在节点    Java
3 条回复
alvinbone88
2018-12-20 23:17:31 +08:00
ClancyH
2018-12-20 23:38:03 +08:00
@alvinbone88 SecurityManager 可以用来阻止反射,但是 System 这个类中有 8 个类变量,用 getDeclaredFields()获取的 Field 数组中只有 security 这个字段没有,另外一个完全相同修饰符的 Console 对象也可以获取到
alvinbone88
2018-12-21 03:04:07 +08:00

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/519568

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX