上节我们介绍了UMl组成中的UML构造块,这里继续向大家介绍UML组成问题,本节主要包括UML组成规则和UML公共机制两大部分内容,相信通过本节的学习你对UML组成一定会有全面的认识。下面就是UML组成的具体介绍。
2、关系
UML模型的关系比较多,下图
2.1 关联关系
关联(Association)表示两个类之间存在某种语义上的联系。关联关系提供了通信的路径,它是所有关系中最通用、语义最弱的。
在UML组成中,使用一条实线来表示关联关系
在关联关系中,有两种比较特殊的关系:聚合和组合
聚合关系:聚合(Aggregation)是一种特殊形式的关联。聚合表示类之间的关系是整体与部分的关系
如果发现“部分”类的存在,是完全依赖于“整体”类的,那么就应该使用“组合”关系来描述
组合是聚合的变种,加入了一些重要的语义。也就是说,在一个组合关系中一个对象一次就只是一个组合的一部分,“整体”负责“部分”的创建和破坏,当“整体”被破坏时,“部分”也随之消失
聚合就像汽车和车胎,汽车坏了胎还可以用。组合就像公司和下属部门,公司倒闭了部门也就不存在了!
2.2 泛化、实现与依赖
泛化关系描述了一般事物与该事物中的特殊种类之间的关系,也就是父类与子类之间的关系。
实现关系是用来规定接口和实现接口的类或组件之间的关系。接口是操作的集合,这些操作用于规定类或组件的服务。
有两个元素X、Y,如果修改元素X的定义可能会引起对另一个元素Y的定义的修改,则称元素Y依赖(Dependency)于元素X。
二、UML组成规则
命名:也就是为事物、关系和图起名字。和任何语言一样,名字都是一个标识符
范围:与类的作用域相似.
可见性:Public,Protected,Private,Package
三、UML组成公共机制
1、规格描述
在图形表示法的每个部分后面都有一个规格描述(也称为详述),它用来对构造块的语法和语义进行文字叙述。这种构思,也就使可视化视图和文字视图的分离:
2、UML修饰与通用划分
在为了更好的表示这些细节,UML中还提供了一些修饰符号,例如不同可视性的符号、用斜体字表示抽象类
UML通用划分:
1)类与对象的划分:类是一种抽象,对象是一个具体的实例
2)接口与实现的分离:接口是一种声明、是一个契约,也是服务的入口;实现则是负责实施接口提供的契约
3、UML组成中扩展机制
构造型:在实际的建模过程中,可能会需要定义一些特定于某个领域或某个系统的构造块
标记值则是用来为事物添加新特性的。标记值的表示方法是用形如“{标记信息}”的字符串
约束是用来增加新的语义或改变已存在规则的一种机制(自由文本和OCL两种表示法)。约束的表示法和标记值法类似,都是使用花括号括起来的串来表示,不过它是不能够放在元素中的,而是放在相关的元素附近。
4、UML视图和图
图名 功能 备注
类图 描述类、类的特性以及类之间的关系 UML1原有
对象图 描述一个时间点上系统中各个对象的一个快照 UML1非正式图
复合结构图 描述类的运行时刻的分解 UML2.0新增
构件图 描述构件的结构与连接 UML1原有
部署图 描述在各个节点上的部署 UML1原有
包图 描述编译时的层次结构 UML中非正式图
用例图 描述用户与系统如何交互 UML1原有
活动图 描述过程行为与并行行为 UML1原有
状态机图 描述事件如何改变对象生命周期 UML1原有
顺序图 描述对象之间的交互,重点在强调顺序 UML1原有
通信图 描述对象之间的交互,重点在于连接 UML1中的协作图
定时图 描述对象之间的交互,重点在于定时 UML2.0新增
交互概观图 是一种顺序图与活动图的混合 UML2.0新增
本节关于UML组成方面的内容介绍到这。
【编辑推荐】