C++的数据抽象、数据封装


数据抽象

仅向用户暴露接口而把具体的实现细节隐藏起来的机制    (而抽象类是指含有虚函数的类)

使用访问标签来定义类的抽象接口。

一个类可以包含多个或零个访问标签

使用公共标签定义的成员都可以访问该程序的所有部分。一个类型的数据抽象视图是由它的公共成员来定义的。

使用私有标签定义的成员无法访问到使用类的代码。私有部分对使用类型的代码隐藏了实现细节。

指定的访问级别会一直有效,直到遇到下一个访问标签或者遇到类主体的关闭右括号为止。


如果只在类的私有部分定义数据成员,就可以随意更改数据。如果实现发生改变,则只需要检查类的代码,看看这个改变会导致哪些影响。 如果数据是公有的,则任何直接访问旧表示形式的数据成员的函数都可能受到影响。



数据封装

把数据和操作数据的函数绑定在一起的机制


C++通过创建来实现封装和数据隐藏

通常设置类成员状态为private, 用于数据成员、虚函数,以保证良好的封装性

展开阅读全文

没有更多推荐了,返回首页