C++三大特征:封装,继承,多态
继承的本质:代码复用
1.继承和派生的关系:
2.继承了什么?
1.普通的成员变量
2.普通的成员方法
3.静态的成员变量
4.静态的成员方法
除构造和析构以外的所有成员方法
3.派生类的内存布局:
基类的布局优先于派生类
4.派生类的构造函数析构顺序:先构造的后析构
1.基类的构造函数
2.派生类的构造函数
3.派生类的析构函数
4.基类的析构函数
5.继承方式:
访问限定符:
pulic:任意
protected:本类和子类
private:本类
基类下不同访问限定符下的成员,以不同继承方式继承以后,在派生类中的访问限定
继承方式\基类 | public | protected | private |
public | public | protected | 不可 |
protected | protected | protected | 不可 |
private | private | private | 不可 |
6.类与类之间的关系:
桌子/桌腿 组合 a part of has_a
鸟/燕子 继承 a kind of is_a
代理--->限制底层接口
private -->继承是模拟实现has_a
7.同名函数的关系
1.重载 overload 重定义 静多态(编译阶段确定函数调用)
2.隐藏 overhide
3.覆盖 override 重写 动多态(运行阶段确定函数调用)