一、封装
- 目的:隐藏实现细节;模块化
- 特性:
1) 访问权限:
public 所有
protected 子类
private 自己(友元类也可以访问)
2)属性
3)方法
二、继承
- 目的:无需修改原有类,实现功能的拓展
- 特性
1)权限继承(public、protected、private):基类在子类中的最高权限
2)using修改基类成员在子类中的权限
public: A::c;
3)接口继承:基类都是纯虚函数
三、多态
- 目的:一个接口多种形态,通过实现接口重用,增强可拓展性
- 特性
1)静态多态:函数重载
2)动态多态:虚函数重写
推荐一个零声学院项目课,个人觉得老师讲得不错,分享给大家:
零声白金学习卡(含基础架构/高性能存储/golang云原生/音视频/Linux内核)
https://xxetb.xet.tech/s/VsFMs