类和类之间的关系
- 继承关系
- 实现(C++通过纯虚函数和纯虚类模拟一个接口,抽象类是一个接口类:定义一个抽象类,下面对于抽象类进行实现)
- 依赖(虚线)一个类是另外一个类的函数参数或者函数返回值
- 关联(实线线条)一个类是另一个类的成员变量。
继承(泛化)
实现关系
依赖关系
一个类是另外一个类的函数参数或者函数返回值
张三借车去上班,void goWork(Car * car){};
张三修理车,修理完后返回 Car* fixed(){};
关联关系
一个类是另一个类的成员变量
人由身体和四肢构成,class body;class armsAndLegs;作为class Human的private成员变量。
汽车由引擎和发动机组成;
当创建类的对象时,如果该类具有内嵌对象成员,那么各个内嵌的对象将首先被自动创建。
因为部件对象是复杂对象的一部分,因此:
在创建对象时既要对蓓蕾的基本类型数据成员进行初始化,又要对内嵌成员进行初始化。
补充(增强类A的方法)
- 通过修改A的代码;
- 通过class B继承A,达到扩展的目的;
- 通过依赖,关联扩充A
优先使用依赖,关联,不是继承