最近在公司需要画类图,有些遗忘,于是重新学习并并总结了一下:
- 继承:实线空心三角箭头。A继承B,A指向B。A是一种B。
- 实现:虚线空心三角箭头。A实现B,A指向B。A实现B接口。
- 关联:实线普通箭头。A依赖B,A指向B,B的变化会影响A。属于强依赖。
- 聚合:实线空心棱形箭头。A聚合B,B指向A,A是B的整体,B是A的一部分。B可单独存在。
- 组合:实线实心棱形箭头。A组合B,B指向A,A是B的整体,B是A的一部分。B不可单独存在。
- 依赖:虚线普通箭头。A依赖B,A指向B,B的变化会影响A。
依赖和关联的区别:
- 依赖:如果A类中只是在某个方法内部临时使用了另一个类,而没有在类的属性中保存对另一个类的引用,那么就是依赖关系。它强调的是一种使用关系,是比较临时和暂时的。
- 关联:如果A类中,B类是以一个属性的形式存在于A类中的,A长期持有或引用B。这就是关联关系。
相同点就是,如果A依赖B,A指向B,B的变化会影响到A。