uml用关系把事物结合在一起,有四种
依赖
两个事物之间的语义关系。是一种使用关系,其中一个事物发生变化会影响另外一个事物的语义,一个类的实现需要另外一个类的协助
对象之间最弱的一种关联方式,是临时性的关联。代码中一般指由局部变量、函数参数、返回值建立的对于其他对象的调用关系。一个类调用被依赖类中的某些方法而得以完成这个类的一些职责
描述一个对象在运行期间会调用到另一个对象的关系,依赖于运行状态,通常是在程序里通过构造函数,形参等体现
依赖使用虚线+箭头表示
关联
一种描述一组对象之间连接的结构关系,如聚合,组合
关联使用实线+箭头表示,是一种拥有关系,脱离关系双方都有意义
聚合使用空心菱形+实线+箭头表示,是一种整体和部分关系,脱离关系空心菱形那边无意义,箭头那边有意义
组合使用实心菱形+实线+箭头表示,是一种整体和部分关系,脱离关系实心菱形那边无意义,箭头那边也无意义
泛化
一般和特殊的关系,描述特殊元素的对象可替换一般元素的对象
泛化使用实线+空心三角表示
实现
类之间的语义关系,其中一个类指定了由另一个类保证执行的契约,类是接口所有特征和行为的实现
实线使用虚线+空心三角表示
-
通知分为一般通知、割接通知、重保通知。这个是继承关系。
-
NoticeService和实现类NoticeServiceImpl是实现关系。
-
NoticeServiceImpl通过save方法的参数引用Notice,是依赖关系。同时调用了BaseDao完成功能,也是依赖关系。
-
割接通知和故障单之间通过中间类(通知电路)关联,是一般关联。
-
重保通知和预案库间是聚合关系。因为预案库可以事先录入,和重保通知没有必然联系,可以独立存在。在系统中是手工从列表中选择。删除重保通知,不影响预案。
-
割接通知和需求单之间是聚合关系。同理,需求单可以独立于割接通知存在。也就是说删除割接通知,不影响需求单。
-
通知和回复是组合关系。因为回复不能独立于通知存在。也就是说删除通知,该条通知对应的回复也要级联删除。