类与类之间由弱到强关系是: 没关系 > 依赖 > 关联 > 聚合 > 组合。
依赖关系
类A使用到类B,这种使用关系是偶然的、临时的、非常弱的,但是B类的变化会影响到A。
在代码层面,类B作为参数在A的方法中使用。
关联关系
是类与类、类与接口之间的强依赖关系,这个依赖关系是长期的,平等的,可以单向、双向。
在代码层面,被关联类B以属性或全局变量形式出现在关联类A中
## 聚合关系
has-a关系,是整体与个体的关系,生命周期不同,在代码层面和关联是一致的,只能从语义上区分
![聚合关系](https://img-blog.csdnimg.cn/2020101210520272.png#pic_center)
## 组合关系
contain-a 关系,是整体与个体的关系,生命周期相同,在代码层面和关联是一致的,只能从语义上区分
继承关系(泛化)
指类A继承类B,子类继承父类,子接口继承父接口。
实现关系
指类实现接口