大学C++程序设计教程
西安交通大学
计算机教学实验中心.
第10章继承和派生
本章目标
,派生类的定义方法。
、定义方法、单继承派生类构造函数的执行顺序。
4. 理解多继承的概念
5. 虚基类的概念和定义
1
授课内容
基类与派生类
派生类的继承方式
派生类的构造函数和析构函数
接口和实现方法的分离
显示访问基类成员
使用this指针
2
水果的分类
3
继承和派生
从一个或多个以前定义的类(基类)产生新类的过程称为派生,这个新类又称为派生类。
类的继承(inheritance)是指新类从基类那里得到基类的特征,也就是继承基类的数据和函数。
派生的新类同时也可以增加或重新定义数据和操作,这就产生了类的层次性。
派生就是创建一个具有别的类的属性和行为的新类的能力。派生和继承的概念也来自于人们认识客观世界的过程。
4
层次概念
客观世界本身是有层次的,人们认识客观世界的过程中,由一般到特殊的演绎思维发挥着巨大作用。演绎的过程在绝大多数情况下就表现为层次分类的过程。继承使得程序员可以在一个较一般的类的基础上很快地建立一个新类,而不必从零开始设计每个类。
5
继承常用来表示类属关系,不能将继承理解为构成关系。当从现存类中派生出新类时,可以对派生类做如下几种变化:
①可以增加新的数据成员;
②可以增加新的成员函数;
③可以重新定义已有的成员函数;
④可以改变现有成员的属性。
6
基类1
基类2
……
基类n
派生类1
派生类2
基类
派生类1
派生类2
(a)多重继承
(b)单继承
一个基类可以直接派生出多个派生类
派生出来的新类同样可以作为基类再继续派生出更新的类,依此类推形成一个层次结构。
多重继承与单继承
如果一个派生类可以同时有多个基类,称为多重继承(multiple-inheritance),这时的派生类同时得到了多个已有类的特征。一个派生类只有一个直接基类的情况称为单一继承(single-inheritance)。
7
派生类的定义格式:
class 派生类名:访问权限基类名1,访问限定符基类名2,……,访问限定符基类名n
{ private:
成员表1; //派生类增加或替代的私有成员
public:
成员表2; //派生类增加或替代的公有成员
protected:
成员表3; //派生类增加或替代的保护成员
};//分号不可少
8
其中基类1,基类2,……是已声明的类。在派生类定义的类体中给出的成员称为派生类成员,它们是新增加的数据和函数成员。这些新增加的成员是派生类对基类的发展,它们给派生类添加了不同于基类的新的属性和功能。派生类成员包括新添加的,也包括通过屏蔽作用,取代基类成员的更新成员
9
第10章 继承和派生 来自淘豆网m.daumloan.com转载请标明出处.