【问题标题】:Why to use access specifiers/Modifiers in Java?为什么在 Java 中使用访问说明符/修饰符?
【发布时间】:2013-12-14 03:15:13
【问题描述】:

我正在学习 Java,我的问题是为什么要在 Java 中使用访问说明符/修饰符?为什么我们需要对类、方法或变量使用 Public、Private、Protected 和 Default 访问。如果我是程序员,那么显然我对程序了如指掌。如果我是最终用户,那么我不知道什么是程序?那我向谁隐瞒细节?数据隐藏在哪里?请帮助我举一些例子作为程序员的观点以及最终用户的观点。

【问题讨论】:

    标签: oop default private public protected


    【解决方案1】:

    隐藏对象的内部可以防止用户将组件的内部数据设置为无效或不一致的状态,从而保护其完整性。

    封装的一个好处是它可以降低系统复杂性,从而提高稳健性,因为它允许开发人员限制软件组件之间的相互依赖关系。 [1]

    [1]http://en.wikipedia.org/wiki/Encapsulation_(object-oriented_programming)

    【讨论】:

      【解决方案2】:

      作为软件设计师的观点:实际和语义原因。

      变量描述对象实例的状态。受保护的变量是继承的。这是实用的,因为继承链中的类可以彼此共享结构相似性。非继承变量保持私有。变量只有在为常量时才是公共的(公共静态最终变量)。

      方法描述对象的行为。 protected 的继承和公共方法的使用与变量几乎相同,除了变量描述状态,方法描述行为。一个区别是包私有方法的使用,这种方法通常在框架内部使用。

      【讨论】:

        【解决方案3】:

        如果您确实需要一个实际示例,假设您的 FB 密码的详细信息存储为私有变量,而您的 LoginID 存储为 FBDetails 类中的受保护变量... 现在任何人都可以继承 FBDetails 类来获取您的 LoginID,但显然没有人可以访问您的密码。

        【讨论】:

          猜你喜欢
          • 2011-01-15
          • 2014-11-03
          • 2011-04-12
          • 1970-01-01
          • 2015-11-26
          • 1970-01-01
          • 2018-09-29
          • 2013-05-25
          • 2016-07-18
          相关资源
          最近更新 更多