gpt4 book ai didi

java - Java中私有(private)成员真的多 "secure"吗?

转载 作者:太空狗 更新时间:2023-10-29 22:56:10 28 4
gpt4 key购买 nike

学习 Java 我有时被教导使用 private 访问修饰符,以免将“敏感信息”暴露给其​​他类,好像这会打开一个合法的安全漏洞。但我从未遇到过限制成员可见性不仅仅是为了以面向对象的方式建模程序的便利。

Java 类中的private 字段和函数实际上比其他方式更“安全”吗?


编辑 -- 最佳答案汇编。

为什么 private 并不意味着“安全”:

  • 反编译器允许静态查看字节码
  • 反射 库允许运行时访问私有(private)成员

private 的用途:

  • 代码的可维护性 由于强制方法级访问
  • 模块化代码通过隐藏实现细节

最佳答案

我从来没有听说过它——从任何严肃的意义上说——是一个安全问题。我的意思是,反编译器工作。您可以使用它们来弄清楚字节码内部发生了什么。

拥有 private 成员是一个可维护性问题。如果我只给你方法级访问我内部的权限,那么我唯一的责任就是确保我的 API 方法继续工作。只要我的方法继续返回 Double(例如).

关于java - Java中私有(private)成员真的多 "secure"吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9201603/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com