【问题标题】:OOP Encapsulation ConceptOOP 封装概念
【发布时间】:2016-02-11 05:21:16
【问题描述】:

在一次采访中,有人问我这个问题。这是封装的例子吗?

class abc
{

}

我尝试从多本书中寻找答案,但找不到。

【问题讨论】:

  • 这里的重点是类没有成员和方法?
  • 能否给“封装”一个清晰具体的定义?
  • 我可以肯定地告诉你,这听起来是一个非常糟糕的问题。

标签: oop encapsulation


【解决方案1】:

当发生以下情况时,我们将开始谈论封装:

  • 该类将具有成员方法,因此成为数据和方法的集合。
  • 在这个类中,我们开始隐藏其中的数据,并且仅通过公共方法使其可用

这种技术被称为封装,因为它将数据(和内部方法)安全地密封在类的“胶囊”中,只有受信任的用户(即类的方法)。

在没有方法和成员之前,我不认为我们在谈论封装。

【讨论】:

    【解决方案2】:

    如果类为空,说明没有要封装的信息,所以这里没有encapsulation

    【讨论】:

      【解决方案3】:

      不,不是,

      封装是指将数据成员和操作它们的函数绑定到一个实体中的行为。

      大多数情况下,它们被绑定到一个类中。

      但是这里的例子要对数据成员和函数进行封装,所以不是封装

      【讨论】:

        猜你喜欢
        • 2018-09-20
        • 2013-10-17
        • 1970-01-01
        • 2016-05-08
        • 2011-04-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多