封装的多种实现

来源:互联网 发布:java中的volatile 编辑:程序博客网 时间:2024/06/10 21:12

封装的多种实现

面向对象的软件系统有四个要素-抽象、封装、继承和多态。封装一般解释是将抽象得到的数据和行为(或功能)相结合,形成一个有机的整体,也就是将数据与操作数据的源代码进行有机的结合,隐藏内部的数据和实现细节,仅对外公开接口,便于复用,提高了效率。

封装的目的是增强安全性和简化编程,使用者不必了解具体的实现细节,而只是通过外部接口特定的访问权限来使用类的成员。

在不同的环境中,封装有不同的表现形式,封装不是OOP的专利,封装无处不在,例如在语句、函数、类、组件、系统级别都要使用封装。封装的结果是信息隐藏,把访问接口和具体实现相分离。被封装的实体需要满足职能单一原则,有高内聚性,这样的封装才能够被容易的复用和维护。

1 代码级封装:例如使用具名常量而不是字面常量就是封装的一种实现。

2 函数级封装:通过函数的签名来访问函数而隐藏具体代码。

3 类的封装:接口和实现的分离。

4 组件的封装:通过一个协调者类访问组件。

5 子系统的封装:通过一个门面类访问子系统。