1、模块五 继承与派生计算机科学与编程导论2本模块主要内容继承与派生的概念派生类的声明方式派生类的构成派生类成员函数的访问属性派生类的构造函数和析构函数多继承虚基类3继承与派生的概念继承与派生l 保持已有类的特性而构造新类的过程称为继承。l 在已有类的基础上新增自己的特性而产生新类的过程称为派生。l 被继承的已有类称为基类(或父类)。l 派生出的新类称为派生类。4继承与派生问题举例继承与派生5继承与派生问题举例继承与派生6继承与派生问题举例继承与派生7继承与派生问题举例继承与派生8继承与派生的目的l 继承的目的:实现代码重用。l 派生的目的:当新的问题出现,原有程序无法解决(或不能完全解决)时,需
2、要对原有程序进行改造。继承与派生9派生类生成过程l 三个步骤 :( 1)吸收基类成员(除构造函数和析构函数外,新类将基类的公有成员全部接受)。因此要慎重选择基类,尽量使继承来的成员发挥作用;( 2)改造基类成员(在新类中定义继承方式来控制继承来成员的访问权限;在新类中定义与基类中同名的数据或函数,即 “同名覆盖 ”,实现以新成员取代基类的成员);( 3)添加新的成员,包括数据和函数(例如构造函数和析构函数);l 派生类是基类的详细定义。派生类的构成10派生类的构成Person类string name;int age;char sex;void display()基类数据成员成员函数Student类string name;int age;char sex;void display()int num;int class;void display()继承派生类新增基类和派生类的关系派生类的构成