11.3派生类的 构成 派生类中的 从基类继承过来的成员 成员 自己增加的成员 派生类 派生类中的 从基类继承来的成员 函数 声明派生类时增加 的部分
11.3 派生类的 构成 派生类中的 成员 从基类继承过来的成员 自己增加的成员 派生类 从基类继承来的成员 声明派生类时增加 的部分 派生类中的 函数
基类 派生类 Student类 Student1类 数 int num; int num; 寶 char name[10]; 继承 char name[10]; char sex; char sex; 成员 函数 void display() void display(); int age; char addr [30]; 新增 void display(); 图11.6
图11.6
构造一个派生类包括以下3部分工作: (1)从基类接收成员。 派生类把基类全部的成员(不 包括构造函数和析构函数)接 Class Student/声明基类 收过来 {public: class Student1:public Student void get_.value() {public: void display() void display_1() private private: int num; int age; string name; char sex; } 要求根据派生类的需要慎重选择基类, 使冗余量最小。事实上,有些类是专 int num; 门作为基类而设计的,在设计时充分 string name; Student1 char sex; v考虑到派生类的要求。 int age; void display 1( string addr;
构造一个派生类包括以下3部分工作: (1) 从基类接收成员。 派生类把基类全部的成员(不 包括构造函数和析构函数)接 Class Student//声明基类 收过来 {public: void get_value( ) void display( ) private : int num; string name; char sex; }; class Student1: public Student {public: void display_1( ) private: int age; string addr; }; Student1 int num; string name; char sex; int age; string addr; void get_value( ) void display( ) void display_1( ) 要求根据派生类的需要慎重选择基类, 使冗余量最小。事实上,有些类是专 门作为基类而设计的,在设计时充分 考虑到派生类的要求
(2)调整从基类接收的成员。 接收基类成员是程序人员不能选择 的,但是程序人员可以对这些成员 作某些调整。 (3)派生类对基类功能的扩展:在声明派生类 时增加的成员,这部分内容是很重要的
(2) 调整从基类接收的成员。 接收基类成员是程序人员不能选择 的,但是程序人员可以对这些成员 作某些调整。 (3)派生类对基类功能的扩展:在声明派生类 时增加的成员,这部分内容是很重要的
构造函数 不能从基类继承的 析构函数 声明派生类自己定义 先声明一个基类:提供某些最基本的功能 再声明派生类:加入某些具体的功能 形成适用于某一特定应用的派生类 通过对基类声明的延续,将一个抽象的基类转化成具 体的派生类。因此,派生类是抽象基类的具体实现
构造函数 析构函数 不能从基类继承的 声明派生类自己定义 先声明一个基类:提供某些最基本的功能 再声明派生类:加入某些具体的功能 形成适用于某一特定应用的派生类 通过对基类声明的延续,将一个抽象的基类转化成具 体的派生类。因此,派生类是抽象基类的具体实现