學習Java,我有時會教使用private
訪問修飾符以免暴露「敏感信息」其他類,好像這可以打開一個合法的安全漏洞。但是我從來沒有遇到過這樣一種情況:限制成員可見性不僅僅是爲了以面向對象的方式對程序進行建模。私人會員真的在Java中更「安全」嗎?
是private
領域和功能在Java類實際上是更「安全」比其他?
編輯 - 最佳答案的編制。
爲什麼private
並不意味着 「安全」:
- 反編譯允許以字節碼
- 折射靜看庫允許運行時訪問私有成員
什麼private
好用於:
- 可維護性的代碼由於隱藏實現細節
我同意答案。你的老師不理解訪問修飾符的要點。它與安全無關。 – 2012-02-08 21:28:33
只要一點:通過爲Java安全管理器配置策略,可以防止危險代碼(如用於更改訪問級別的反映,調用不安全等)。 http://docs.oracle.com/javase/7/docs/api/java/security/Policy.html – kaqqao 2015-08-03 19:09:34