继承性是面向对象设计的最重要特征,实现了软件的可重用性。
1.继承与派生的概念
在c++中,所谓继承就是在一个已存在的类的基础上建立一个新的类。已存在的类称为基类或父类,新建立的类称为派生类或者子类。
一个新类从已有的类那里获得其已有的特性,这种现象称为类的继承。
从已有的类产生一个新类,称为类的派生。
继承的分类:
1.一个派生类只从一个基类派生,称为单继承。
2.一个派生类有两个或者多个基类的称为多重继承。
2.派生类的声明方式
声明派生类的一般形式为
class 派生类名: [继承方式] 基类名
{
派生类新增加的成员
};
继承方式包括: public private protected。继承方式是可选的,如果不写这一项,默认为是private。
例如
class Studentl:public Student { public: int age; private: int sex; };
3.派生类的构成
派生类的成员包括从基类继承过来的成员和自己新增加的成员两大部分。从基类继承的成员体现了派生类从基类继承而获得的共性,而新增加的成员体现了派生类的个性。
构造一个派生类包括以下三部分的工作:
(1)从基类接受成员
派生类把基类的全部成员(不包括构造函数和折构函数)接受过来。
(2)调整从基类接受的成员
例如:通过指定继承方式,来改变基类成员在派生类中的访问属性;在派生类中声明一个与基类成员同名的成员函数(参数表也相同)来覆盖基类的同名成员函数,或者声明一个同名的成员变量来覆盖基类的同名成员变量