码迷,mamicode.com
首页 > 其他好文 > 详细

UML静态类图

时间:2016-05-23 21:10:19      阅读:149      评论:0      收藏:0      [点我收藏+]

标签:

0,
主要分为类、接口、协作、关系,这四种元素。
作用:a,显示类、接口以及他们之间的静态结构和关系;b,用于描述系统的结构化设计。

1,类

CStudent

+m_strName : string

+Study() : void


类名:
属性:[可见性]属性名 [:类型] [=初试值] [{属性字符串}]
操作:[可见性]操作名[(参数表)] [:返回类型] [{属性字符串}]
+(public), -(private), #(protected), ~(package)

2,接口

<<interface>>
CPerson

+Eat() : void

接口是对对象行为的描述,一个类可有一个或多个接口。

3,协作
在一定的语境中一组对象以及实现某些行为的对象间的相互作用。

4,关系
1),泛化Generalization
a,是一种继承关系,它指定子类如何特例化父类的所有特征和行为。
b,用带空心箭头的实线表示,箭头指向父类。
技术分享

2),实现Realization
a,是一直类与接口的关系,表示类是接口所有特征和行为的实现。
b,用带空心的虚线表示,箭头指向接口。
技术分享

3),关联Association
3.1)、一般关联
a,类与类直接的联结,它使一个类知道另一个类的属性和方法,指明了事物对象间的联系。
b,用带箭头的实线表示。双向关联两边都无箭头,单向关联有一个箭头。
c, 在每个端点可以有一个基数,?表示这个关联的类可以有几个实例。
0..1:0?1?个实例.?
0..*:?
对实例的数目没有限制.?
1:?
只能有一个实例.?
1..*:?
至少有一个实例.?
d,
表现在代码层面,为被关联类B以类属性的形式出现在关联类A中,也可能是关联类A引用了一个类型为被关联类B的全局变量。
技术分享
技术分享


3.2)、聚合Aggregation
a,整体与部分的关系,且部分可以离开整体单独存在。聚合属于关联中的一中,是强关联关系。
b,用带空心菱行实线表示,菱形指向整体。
技术分享
3.3)、组合Composition
a
, 整体与部分的关系,且部分不能离开整体单独存在。是比聚合还强的关系。它要求整体对象负责其中部分对象的生命周期。
b, 用带实心菱行实线表示,菱形指向整体。
技术分享

5,依赖Dependency
a, 元素A的变化会影响元素B,那么B是A的依赖关系。避免双向依赖,关联、实现、泛化都是依赖关系。
b, 带虚线的箭头表示,箭头指向被依赖元素。
技术分享

6,
技术分享

UML静态类图

标签:

原文地址:http://www.cnblogs.com/liuhan333/p/5521157.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!