既然Java反射能够访问和修改私有成员变量,那封装成private还有什么意义

简单来讲,private并非解决“安全”问题的。java 安全是指不让代码被非法看到/访问。可是只要人能拿到代码,总会有办法去查看和改变代码。其余答案提到反射能够用SecurityManager来防止private被访问。可是从更高一层的角度,即使使用了SecurityManager,仍是能够经过各类方式拿到java的bytecode,并作任意修改。好比有asm这样的lib,也有instrumen
相关文章
相关标签/搜索