如何绘制UML类图(模型静态结构)


一、类与接口

在这里插入图片描述

类的符号是三层矩形框
第一层显示类名。若是斜体,表示abstract;若有下划线,表示static

第二层是属性。冒号后是类型;前面的符号指的是修饰符,‘+’表示public,‘-’表示private,‘#’表示protected,‘~’或不写表示default;若有下划线,表示static。

第三层是方法。冒号后是返回值类型,当返回值为空或无返回值时可以不写;前面的符号指的是修饰符,‘+’表示public,‘-’表示private,‘#’表示protected,‘~’或不写表示default;若有下划线,表示static。括号内是参数和参数类型,用逗号分隔,可以如图所示来写,也可以写成java的参数列表格式。

接口

在这里插入图片描述

接口可以由两层矩形框组成

第一层写接口名,上方还有interface标识

第二层写接口方法,与类方法写法类似,不再赘述。

在这里插入图片描述

接口还可以由圆圈和线组成,称为棒棒糖表示法

圆圈旁写接口名即可


二、关系

关系线上一般也可以写相关联的方法,这里不再赘述。

继承

在这里插入图片描述

继承类,这里也可称为泛化,由空心三角形和实线组成
该符号连接子类与父类,三角形指向父类

实现

在这里插入图片描述

实现接口,由空心三角形和虚线组成
该符号连接子类与父类,三角形指向被实现的接口

在这里插入图片描述
若用棒棒糖表示法,直接将类与接口相连即可
若想显示方法则画两条直线,之下写方法。

关联

关联体现两个类、或者类与接口之间语义级别的一种强依赖关系。而表现在代码层面,为被关联类B以类属性的形式出现在关联类A中,或者是关联类A引用了一个类型为被关联类B的全局变量。

在这里插入图片描述

关联由实线和箭头表示
箭头指向被关联的类或接口,而双向关联时出现双向箭头或者直接用实线连接彼此。
另外,下面所述的组合和聚合关系都是关联的一种

依赖

依赖就是一个类A使用到了另一个类B,而这种使用关系是具有偶然性、临时性。表现在代码层面,为类B作为参数被类A的某个方法使用。

在这里插入图片描述

关联由虚线和箭头表示
箭头指向被依赖的类。

组合

组合是整体和局部的关系,并且生命周期是相同的,是一种强的‘拥有’关系。局部离开整体不能单独存在。

在这里插入图片描述

聚合关系由实心菱形、实线、箭头表示
实心菱形指向整体,箭头指向局部。

聚合

聚合是群体和个体的关系,体现的是A对象可以包含B对象,但B对象不是A对象的一部分,是一种弱的‘拥有’关系。有时也可以理解为整体和局部的关系,但这里的局部离开整体还能作为个体而存在。

在这里插入图片描述

聚合关系由空心菱形、实线、箭头表示
空心菱形指向群体整体,箭头指向个体。

内嵌

如果一个类定义在另一个类内,可以称之为包含或者内嵌关系。
即类似于public class A { public class B{ } }

在这里插入图片描述

内嵌关系用实线、十字和圆圈组成
十字圆圈在外部类处。


三、其它

注释

在这里插入图片描述
注释可由虚线和翻页形式的矩形组成
虚线指向需要注释的地方,注释写在矩形内,其操作也会在下文中体现。

包类似于文件系统中的文件夹,它可以允许类组成较小的类文件夹,易于找到和使用相应的文件。
包与包或者包与类之间的关系有四种
1、《use》使用关系:是一种默认的依赖关系,说明客户包(发出者)中的元素以某种方式使用提供者包(箭头指向的包)的公共元素,也就是说客户包依赖于提供者包
2、《import》引用关系:最普遍的包依赖类型,说明提供者包(箭头指向的包)的命名空间(包本身代表命名空间)将被添加到客户包(发出者)的命名空间中,客户包中的元素也能够访问提供者包的所有公共元素
3、《access》访问关系:只想使用提供者包中的元素,而不想将其命名空间合并则应使用该关系
4、《trace》追溯关系:想表示一个包到另一个包的历史发展,则需要使用《trace》关系来表示
另外,外包和内包之间也可组成继承关系。

在这里插入图片描述

包由两个大小不同的矩形组成
上面的小矩形中写包名,而下面的大矩形会放置内部的包或者内部的类。内部的类可以以列表形式出现,也可以以UML类图的形式出现。
折叠后的包,直接用矩形表示

包关系由虚线、箭头和关系名称组成
箭头指向被使用的包或者类,关系名放在虚线之上。

内外包之间除了在图中显示的直接包含在内的形式,也可用继承符号相连接。

基数

组合和聚合关系可以添加基数,表示整体和局部之间对应的数量关系,这里的数值可以是具体的自然数,也可以表示任意数的n,可以写也可以不写。一般会写一对数字。

在这里插入图片描述

在这里插入图片描述

基数就标在各自对应位置
以上图为例,一只鸟有两支翅膀,一量轿车有四个轮胎。


附:大话设计模式中的图例

在这里插入图片描述

  • 10
    点赞
  • 67
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值