一、继承的定义
1.继承是面向对象的主要特征(此外还有封装和多态)之一,它使得一个类可以从现有类中派生,而不必重新定义一个新类。
2.继承的实质就是用已有的数据类型创建新的数据类型,并保留己有数据类型的特点,以旧类为基础创建新类,新类包含了旧类的数据成员和成员函数,并且可以在新类中添加新的数据成员和成员函数。(旧类被称为基类或父类,新类被称为派生类或子类。)
二、派生类的定义
1.语法形式:
class 派生类名:基类名表
{
数据成员和成员函数声明
};
2.基类名表(访问控制 基类名1,访问控制 基类名2,访问控制 基类名3,…)。
3.访问控制表示派生类对基类的继承方式,使用关键字:
public、private、protected。
4.派生类继承了基类的全部成员变量和成员方法(除了构造和析构之外的成员方法),但是这些成员的访问属性,在派生过程中是可以调整的。
三、继承的类型
1.公有继承(public):当一个类派生自公有基类时,基类的公有成员也是派生类的公有成员,基类的保护成员也是派生类的保护成员,基类的私有成员不能直接被派生类访问,但是可以通过调用基类的公有和保护成员来访问。
2.私有继承(private):当一个类派生自私有基类时,基类的公有和保护成员将成为派生类的私有成员。
3.保护继承(protected): 当一个类派生自保护基类时,基类的公有和保护成员将成为派生类的保护成员。
主要使用公有继承,具体语法如下:
class Parent
{
int mv;
public:
void method(){};
};
class Child:public Parent
{
};
四、组合与继承的区别
1.组合:整体与部分的关系
例如:电脑由硬盘、内存、cpu、主板组成
2.继承:父子关系
例如:电脑与苹果电脑、戴尔电脑之间的关系。电脑为父类,苹果电脑与戴尔电脑为子类。
五、类的继承关系
1.被继承的类叫父类(或基类),继承后的类叫子类(或派生类),如电脑类便是父类,苹果电脑/戴尔电脑等便是子类。
2.子类拥有父类的所有属性和行为。
3.子类就是一种特殊的父类。
4.子类对象可以当作父类对象使用
5.子类中可以添加父类没有的方法和属性(就像某个品牌的电脑自己所特有的功能)。
五、多继承
定义:多继承即一个子类可以拥有多个父类,它继承了多个父类的特性。
class<派生类名>:<继承方式1><基类名1>,<继承方式2><基类名2>,…
{
<派生类类体>
};
六、“三看”原则(方法)
c++中的继承方式会影响子类的对外访问属性判断某一句话能否被访问。
1.看调用语句,这句话写在子类的内部、外部。
2.看子类如何从父类继承。
3.看父类中的访问级别。
继承知识点总结
最新推荐文章于 2021-10-18 18:39:05 发布