原则
1把尽可能多的东西藏起来.对外提供简捷的接口。
2把所有的属性藏起来。
例如,在抽象的基础上,我们可以将时钟的数据和功能封装起来,构成一个时钟类。
按c ++ 的语法,时钟类的声明如下:
class Clock
{
public: //共有成员,外部接口
void SetTime(int NewH,int NewM,int NewS);
void ShowTime();
private: //私有成员,外部无法访问
int Hour,Minute,Second;
}
可以看到通过封装使一部分成员充当类与外部的接口,而将其他的成员隐蔽起来,这样就达到了对成员访问权限的合理控制,使不同类之间的相互影响减少到最低限度,进而增强数据的安全性和简化程序的编写工作。