解密UML九中关系
将UML中经常使用的九种关系分为了四组进行解释。
一、组合和聚合解说:
同样:均是指有部分组成总体。
不同:聚合是指能够独立存在的个体组成总体。(弱的拥有关系)
组合存在时间上的关系。总体和部分具有同样的生命周期。
且部分本就是总体的 一部分。
(强拥有关系)
比方:书架和书及书页之间关系。
书是书架的一部分。可是书能够离开书架单独存在。
这样的关系是组合
非常多的书页能够组成一本书。可是书是不能离开书页单独存在的。且书和书页是 同一时候存在的。这就是组合关系。
二、包括和扩展解说:
两者存在于用例图中。指的是用例之间的关系。
包括:是用来描写叙述将一个基用例中过于复杂的功能用例。来分解成多个新的用例。
且这些新的用例必不可少。
扩展:是将基用例中的相对独立且可选的用例与基用例之间的描写叙述。
如:机房收费系统中的:用户上机记录查看,包括了查询、查看、退出、导出 Excel表等功能。
若将上机记录查看作为一个用例那么这些功能均要在此用例中描 述。
过于复杂。
那么能够将这些功能分解成子用例。
由于查询、查看、退出,是被包括在上机记录查看必不可少的功能,这三个功能是无条件存在的。将上机记录查看描写叙述的更完整。
而导出为Excel表是在查询出现结果之后,对于上机记录查看这个功能。能不能导出Excel表都是一样的。
三、继承和泛化:
泛化事实上也是一种继承关系。
不同的是泛化关联箭头从子类指向父类的 与继承相反。
是泛化关系
四、关联和依赖的认识:
依赖是比关联弱的关系,关联事实上是一种较强的依赖关系。
依赖是指两个独立的系统之间的关系。一个系统负责构造还有一个系统实例。或依赖于还有一个系统服务时存在的。
比方:但机器负责生产零件时。机器构造的零件实体;打气筒为自行车提供打气服务也是一种依赖关系。
关联是仅仅特定的对象实例之间存在较长期的固定关系。
依赖是指两个对象之间存在短时间的关系。
如用人、自行车、打气筒三者之间的关系来描写叙述。
人和自行车是特定的配对,且在非常长的时间中人均能够骑自行车。
可是。自行车和打气筒之间不存在配对关系,你可能在路上用这个打气筒一次。实用另外各一次,且每次使用时间较短。
五、实现关系;
两个实体与接口之间的关系。