第七章总结
第七章总结:类的继承和派生
1. 继承:保持已有类的特性而构造新类的过程(实现代码重用)
派生:在已有类的基础上新增自己的特性而产生新类的过程(新的问题出现,
原有程序无法解决(或不能完全解决)时,需要对原有程序进行改造)
继承机制的作用是()
A. 信息隐藏
B. 数据封装
C. 定义新类
D. 数据抽象
答案:C
2. 基类 派生类
公有继承: 公有 公有
保护 保护
私有继承: 公有、保护 私有
保护继承: 公有、保护 保护
(在所有继承中,私有成员都是不可以访问的!)
(构造函数和析构函数不能被继承)
3.派生类构造函数的语法形式(可以对基类对象进行初始化):
Derived::Derived(int i0,int j0):Base(i0),j(j0){
}
(1)调用基类构造函数,调用顺序按照它们被继承时声明的顺序(从左向右)。
class Derived:public Base2,public Base1{
};
先Base2 后Base1
(2)对成员对象进行初始化,初始化顺序按照它们在类中声明的顺序。
(3)执行派生类的构造函数体中的内容。
4.单继承:派生类只从一个基类派生。
多继承:派生类从多个基类派生。
多重派生:由一个基类派生出多个不同的派生类。
多层派生:派生类又作为基类,继续派生新的类。
5.析构函数:系统会自动调用,但顺序和构造函数相反
6.class B1:virtual public B虚基类解决二义性问题