Bootstrap

Java设计模式——UML图

目录

类(Class)

接口(Interface)

泛化关系(Generalization)

关联关系(Association)

依赖关系(Dependency)

实现关系(Realization)

注释(Annotation)


UML 是一种用于建模和描述软件系统的标准化语言,它提供了一套丰富的符号和图形表示方法,用于描述系统的结构、行为和交互。

(Class)

  • 在UML中,使用一个长方形描述一个类的主要构成,将长方形垂直地分为三层。
  • 第1层是名字层,类名字是常规字形,表明该类是具体类,类名字是斜体字形,表明该类是抽象类。
  • 第2层是变量层,也称属性层,列出类的成员变量及类型,格式是“变量名字:类型”。
  • 第3层是方法层,也称操作层,列出类的方法及返回类型,格式是“方法名字(参数列表):类型”。

变量或方法的访问权限

接口(Interface

  • 表示接口的UML图和表示类的UML图类似,使用一个长方形描述一个接口的主要构成,将长方形垂直地分为三层。
  • 第1层是名字层,接口的名字必须是斜体字形,而且需要用<<interface>>修饰名字,并且该修饰和名字分列在2行。
  • 第2层是常量层,列出接口中的常量及类型,格式是“常量名字:类型”。 在java接口中,常量的访问权限都是public,所以需要在常量名字前面用“+”符号修饰。
  • 第3层是方法层,也称操作层,列出接口中的方法及返回类型,格式是“方法名字(参数列表):类型”。在java接口中,方法的访问权限都是public,所以需要在方法名字前面用“+”符号修饰。

泛化关系(Generalization

对于面向对象语言,UML中所说的泛化关系就是指类的继承关系。如果一个类是另一个类的子类,那么UML通过使用一个实线连接两个类的UML图来表示二者之间的继承关系,实线的起始端是子类的UML图,终点端是父类的UML图,但终点端使用一个空心的三角形表示实线的结束。

 

关联关系(Association

如果A类中成员变量是用B类(接口)来声明的变量,那么A和B的关系是关联关系,称A关联于B。那么UML通过使用一个实线连A和B的UML图,实线的起始端是A的UML图,终点端是B的UML图,但终点端使用一个指向B的UML图的方向箭头表示实线的结束。

 

依赖关系(Dependency

如果A类中某个方法的参数用B类(接口)来声明的变量或某个方法返回的数据类型是B类型的,那么A和B的关系是依赖关系,称A依赖于B。那么UML通过使用一个虚线连A和B的UML图,虚线的起始端是A的UML图,终点端是B的UML图,但终点端使用一个指向B的UML图的方向箭头表示虚线的结束。

实现关系(Realization

如果一个类实现了一个接口,那么类和接口的关系是实现关系,称类实现接口。UML通过使用虚线连接类和它所实现的接口,虚线起始端是类,虚线的终点端是它实现的接口,但终点端使用一个空心的三角形表示虚线的结束。

注释(Annotation

UML使用注释为类图提供附加的说明。UML在一个带卷角的长方形中显示给出的注释,并使用虚线将这个带卷角的长方形和所它所注释的实体连接起来。

;