封装:
即将抽象得到的数据和行为结合在一起,形 成一个有机的整体,其实就是将数据定义、结构分析等对数据操作的源代码(函数)进行逻辑上的分析和编程语言上的结合,形成能够扩展应用的”类“,而其中的数据和函数都是类的成员。
封装的目的就是强调安全和简化编程,使得使用者不需要关心底层的实现方法,只需要外部接口和特定的访问权限使用类完成其需要的工作。
通过封装是一部分成员充当类与外部的接口,将其他的成员吟唱起来,这样就实现了封装的作用,使对成员访问权限合理控制,不同类之间影响减小到最低,进而达到强数据的安全性和程序编写的工作。
继承:
继承是面向对象软件技术的以的重要概念你。继承使得子类具有父类的各种属性和方法,而不需要再次编写相同的代码,再令子类继承父类对的同时,可以重新定义某些属性,重写某些方法,即覆盖父类的原有属性和方法,使其获得与父类不同的功能。
多态:
多态是将父类设置成一个或更多的他的子对象相等的技术。赋值以后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作。即允许将子类类型的指针赋值给父类类型指针。在C++中都是通过虚函数实现的,虚函数就是允许被其子类重新定义的成员函数,而子类重新定义父类虚函数的做法,称为”覆盖“ 或者”重写“。
访问控制和继承权限:
访问控制–在基类中,public和private标号具有普通含义,用户代码可以访问类的的public成员而不能访问private成员,private成员只能由基类的成员和友元访问。
派生类对基类的public和private成员的访问权限与程序中任意其他部分一样–可以访问public成员而不能访问private成员,protected成员可以被派生类对象访问但不能被该类型的普通用户访问。
继承权限--公共继承:基类成员保持自己的访问级别,基类的public成员为派生类的public成员,基类的protected成员派生类的protected成员。
受保护继承:基类的public和protected成员在派生类中为protected成员。
私有继承:基类所有的成员在派生类中为private成员。
多态:
C++中函数调用不默认使用动态绑定,要想触发动态绑定。需要满足条件:第一,只有指定为虚函数的成员才能进行动态绑定,成员函数默认为非虚函数,非虚函数不进行动态绑定;第二,必须通过基类类型的引用或指针进行函数调用。
void main() {
BaseClass *b1,*b2,*b3;
BaseClass bc;
DerivedClassA dcA;
DerivedClassB dcB;
b1 = &bc;
b2 = &dcA;
b3 = &dcB;
b1->printFunc(); //调用基类的方法
b2->printFunc(); //调用派生类A的方法
b3->printFunc(); //调用派生类B的方法
}
C++封装、继承和多态
最新推荐文章于 2023-11-04 16:00:55 发布