一. 继承和派生概述
继承和派生其实就是:
- 继承父类的成员方法和成员变量;
- 派生自己的成员方法和成员变量。
class 派生类:继承方式1 父类名1,继承方式2,父类名2……
{
public:
构造函数()
~析构函数()
}
注意:
- 每一个继承方式只对紧跟其后的那一个基类有用。
- 默认情况下派生类中包含了基类中除了构造函数和析构函数之外的全部成员变量和方法。
- 派生类中对不同属性的基类成员的访问权限不一样
二. protected属性
protected成员的特点:
- 在基类中,它与private成员的性质相同,都只能在作用域中被访问,不可以在对象中被调用。实现了数据隐藏和保护
- 在派生类中,它与public成员的性质相同。方便继承和代码重用
三. 公有继承,私有继承,保护继承
1. 公有继承(public):
基类的public成员和protected成员被继承到派生类中仍作为派生类的public成员和protected成员
- 派生类:可以直接访问基类中的public和protected成员,但不能访问基类的private成员;
- 派生类对象:只能直接访问基类的public成员;
- 无论是派生类还是派生类的对象,都无法直接访问从基类继承来的private成员。
2. 受保护继承(protected):
基类的public成员和protected成员被继承到派生类中都作为派生类的protected成员
- 派生类可以直接访问它们;
- 类的对象不能访问它们;
- 无论是派生类还是派生类的对象,都无法直接访问从基类继承来的private成员。
3. 私有继承(private):
基类的public成员和protected成员被继承后成为派生类的private成员
- 派生类可以直接访问它们;
- 类的对象不能访问它们;
- 无论是派生类还是派生类的对象,都无法直接访问从基类继承来的private成员。