C++程序设计 湖南大学 杜四春、银红霞 第11章继承和派生类 11.1基类和派生类 112单继承 11,3多继承 114虚基类 11.5应用实例
C++程序设计 湖南大学 杜四春、银红霞 第11章 继承和派生类 11.1 基类和派生类 11.2 单继承 11.3 多继承 11.4 虚基类 11.5 应用实例
C++程序设计 湖南大学 杜四春、银红霞 继承是面向对象程序设计的基本特征之 是从已有的类基础上建立新类。继承性是面向 对象程序设计支持代码重用的重要机制。面向 对象程序设计的继承机制提供了无限重复利用 程序资源的一种途径。通过C++语言中的继承 机制,一个新类既可以共享另一个类的操作和 数据,也可以在新类中定义已有类中没有的成 员,这样就能大大的节省程序开发的时间和资 源
C++程序设计 湖南大学 杜四春、银红霞 继承是面向对象程序设计的基本特征之一, 是从已有的类基础上建立新类。继承性是面向 对象程序设计支持代码重用的重要机制。面向 对象程序设计的继承机制提供了无限重复利用 程序资源的一种途径。通过C++语言中的继承 机制,一个新类既可以共享另一个类的操作和 数据,也可以在新类中定义已有类中没有的成 员,这样就能大大的节省程序开发的时间和资 源
C++程序设计 湖南大学 杜四春、银红霞 11.1基类和派生类 继承是类之间定义的一种重要关系。定义类B时, 自动得到类A的操作和数据属性,使得程序员只需定义 类A中所没有的新成分就可完成在类B的定义,这样称 类B继承了类A,类A派生了类B,A是基类(父类),B 是派生类(子类)。这种机制称为继承。 称已存在的用来派生新类的类为基类,又称为父 类。由已存在的类派生出的新类称为派生类,又称为 子类。派生类可以具有基类的特性,共享基类的成员 函数,使用基类的数据成员,还可以定义自己的新特 性,定义自己的数据成员和成员函数。 在C++语言中,一个派生类可以从一个基类派生, 也可以从多个基类派生。从一个基类派生的继承称为 单继承;从多个基类派生的继承称为多继承。图11-1 反映了类之间继承和派生关系
C++程序设计 湖南大学 杜四春、银红霞 11.1 基类和派生类 继承是类之间定义的一种重要关系。定义类B时, 自动得到类A的操作和数据属性,使得程序员只需定义 类A中所没有的新成分就可完成在类B的定义,这样称 类B继承了类A,类A派生了类B,A是基类(父类),B 是派生类(子类)。这种机制称为继承。 称已存在的用来派生新类的类为基类,又称为父 类。由已存在的类派生出的新类称为派生类,又称为 子类。派生类可以具有基类的特性,共享基类的成员 函数,使用基类的数据成员,还可以定义自己的新特 性,定义自己的数据成员和成员函数。 在C++语言中,一个派生类可以从一个基类派生, 也可以从多个基类派生。从一个基类派生的继承称为 单继承;从多个基类派生的继承称为多继承。图11-1 反映了类之间继承和派生关系
C++程序设计 湖南大学 杜四春、银红霞 B1,B2的基类 A A的派生类 C1,C2,C3的基类B ,B2A的派生类(单继承) C3的基类 Bl的派生类C1C2C3B1,B2的派生类(多继承) 图11-1类之间的继承与派生关系
C++程序设计 湖南大学 杜四春、银红霞 B1,B2的派生类(多继承) A B1 B2 C1 C2 C3 A的派生类(单继承) C3的基类 B1,B2的基类 A的派生类 C1,C2,C3的基类 B1的派生类 图11-1 类之间的继承与派生关系
C++程序设计 湖南大学 杜四春、银红霞 111.1派生类的定义格式 单继承的定义格式如下: clas派生类名>:<继承方式><基类名> public:生类新定义成员 members; <private: members; <protected members;
C++程序设计 湖南大学 杜四春、银红霞 11.1.1 派生类的定义格式 单继承的定义格式如下: class<派生类名> :<继承方式><基类名> { public: //派生类新定义成员 members; <private:> members; <protected:> members; };