UML类图关系

原文出自:http://developer.51cto.com/art/201006/208074.htm

后悔当年在校时没有好好学习,勤加练习,书到用时方恨少,现工作之余有针对性的补下UML类图,简单的不多少,主要还是之间的关系,理论是看不懂的,唯多动手画图,方可理解。

依赖(Dependency)

实体之间一个“使用”关系暗示一个实体的规范发生变化后,可能影响依赖于它的其他实例。

关联(Association)

实体之间的一个结构化关系表明对象是相互连接的。箭头可选,用于指定导航能力,若没有箭头,暗示一种双向的导航能力。

聚合(Aggregation)

聚合关系是指当对象A被加入到对象B中,成为对象B的组成部分时,对象B和对象A之间为聚集关系。聚合是关联关系的一种,是较强的关联关系,强调整体/局部之间的关系;聚合暗示着整体在概念上处于比局部更高的一个级别,而关联暗示两个类在概念上位于相同的级别。

关联和聚合的区别纯粹是概念上的,而且严格反映在语义上。聚合还暗示着实例图中不存在回路。换言之,只能是一种单向关系。

合成(Composition)

合成是聚合的一种特殊形式,暗示“局部”在“整体”内部的生存期职责。合成也是非共享的。所以,虽然局部不一定要随整体的销毁而被销毁,但整体要么负责保持局部的存活状态,要么负责将其销毁。局部不可与其他整体共享。但是,整体可将所有权转交给另一个对象,后者随即将承担生存期职责。

泛化(Generalization)

泛化关系表示一个更泛化的元素和一个更具体的元素之间的关系。泛化是用于对继承进行建模的UML元素。在Java中,用extends关键字来直接表示这种关系。

实现(Realization)

指定两个实体之间的一个合同。换言之,一个实体定义一个合同,而另一个实体保证履行该合同。对Java应用程序进行建模时,实现关系可直接用implements关键字来表示。

 

深度学习:

http://www.ibm.com/developerworks/cn/rational/rationaledge/content/feb05/bell/

 

posted on 2014-11-11 13:09  地方v大  阅读(178)  评论(0编辑  收藏  举报

导航