Java:将私有成员字段设置为可访问的危险?

sle*_*ica 3 java security

要设置私有的值Field,需要将其标记为可访问:

field.setAccessible(true);
Run Code Online (Sandbox Code Playgroud)

SecurityManager什么时候不允许这样?将它包含在库中有多便携?导入某些情境时会失败吗?

Luc*_*ano 5

如果您知道您的库将不会在启用了安全管理器的JVM中使用,例如applet或安全的应用程序服务器,那么它就没问题了.但如果可能的话,我会尽量避免它.

还有其他答案,如此链接表明使用它没有问题.因此,如果您认为这是最好的方法,而其他选项太麻烦或者根本不存在,那么请继续.