有哪些不同类型的封装?

RSl*_*ter 5 oop encapsulation

有哪些不同类型的封装?

我是否认为这基本上是指中心OO概念,如抽象,多态和继承?

我对封装的理解是它是一种隐藏数据/功能的方法,但我从来没有真正考虑过多态或继承是一种封装形式,虽然我可以看到多态如何被认为是封装,因为它可以隐藏对象的确切类型你与...互动.

那么,你会说是关于它的,还是我错过了一些核心概念?

编辑我刚刚在评论中注意到有人提到它可以引用私人/公共方法,也许我正在考虑这个问题并且期待一个比实际更复杂的答案?

Jos*_*rke 3

我觉得你想太多了。

http://en.wikipedia.org/wiki/Information_hiding

摘自这篇文章

计算机科学中的信息隐藏是在计算机程序中隐藏最有可能更改的设计决策的原理,从而在设计决策更改时保护程序的其他部分免受更改。保护涉及提供一个稳定的接口,以保护程序的其余部分免受实现(最有可能更改的细节)。

封装的一种常见形式是使用属性来隐藏私有数据字段。更常见的形式是使用面向对象将软件的复杂性封装到具有角色和职责的良好划分的类中。这是面向对象的一个​​关键租户,因为它从单一的过程设计风格转变为更加结构化的风格,该风格致力于隐藏除与您正在处理的特定任务相关的信息之外的所有不相关信息。