Java 为什么我们要使私有字段而不是本地包

Java 为什么我们要使私有字段而不是本地包,java,scope,Java,Scope,在Java中对类字段使用默认访问级别时是否有开销? 我的意思是“任何”,甚至是启动时的纳秒。 我听说JVM会为字段绘制范围图,这可能是造成开销的原因之一 我懒得写private关键字。有什么好的理由写私有关键字而不是包本地?包本地似乎已经足够本地了 您询问有关OOP的基本知识 你看OOP有4个基本原则 固有 抽象 多态性 封装-这是当私有或受保护关键字到达现场时 通过这些关键字,您可以限制对对象某些字段的访问,以便从外部看不到这些字段 现在回答你的问题 我懒得写private关键字。是否有充分的

在Java中对类字段使用默认访问级别时是否有开销? 我的意思是“任何”,甚至是启动时的纳秒。 我听说JVM会为字段绘制范围图,这可能是造成开销的原因之一

  • 我懒得写private关键字。有什么好的理由写私有关键字而不是包本地?包本地似乎已经足够本地了


  • 您询问有关OOP的基本知识 你看OOP有4个基本原则

  • 固有
  • 抽象
  • 多态性
  • 封装-这是当
    私有
    受保护
    关键字到达现场时
  • 通过这些关键字,您可以限制对对象某些字段的访问,以便从外部看不到这些字段

    现在回答你的问题

    我懒得写private关键字。是否有充分的理由编写私有关键字而不是包本地?

    封装有助于开发人员使代码更加灵活和可维护。通过良好的封装实现,可以轻松更改代码的一部分,而不会影响代码的另一部分。

    是否有充分的理由编写私有代码

    是的,有一个很好的理由。您不希望访问您的私人成员

    有关访问修饰符的摘要以及使用它们的时间和原因,请参见本网站,

    • private=除了母班之外,他们不可以改变

    • no modifier=同一个包中的任何类都可以更改它们

    • protected=与no修饰符相同+可以由子类更改

    • public=一般情况下可以对其进行更改

    如果你点击上面的链接,你会注意到他们建议的警告

    使用对用户有意义的最严格访问级别 特定成员。除非你有很好的理由不这样做,否则请使用private

    如果你没有加修饰语,你实际上是在说

    “如果其他程序员的类与我的类在同一个包中,我明确希望他们更改这些字段。”

    除非另有说明,否则你应该始终保持隐私,这样做就是在说


    “我不想让其他程序员更改这些字段。”

    您知道包本地实际上是限制多于保护吗?