UML语言类图学习
语义 | 作用 | 图形 | 代码 |
---|---|---|---|
note | 用于作注释 | ||
class | 表示类 | ||
interface | 表示接口 | ||
dependency | 表示依赖 | --> | ..> |
association | 表示关联 | -- | -- |
generalization | 表示泛化(继承) | ㅡ▷ | --|> |
realization | 表示实现 | --▷ | ..|> |
aggregation | 表示聚合 | ㅡ◇ | --o |
composition | 表示组合 | ㅡ◆ | --* |
虚线: ..
实线:--
源代码注解形式: /' this is the content '/
页眉和页脚:
缩放:scale
标题: title
图片标题:caption
图例说明: legend------endlegend
private:-
protected:#
package private:~
public:+
抽象:abstract
静态:static
在类内添加分隔符:--、..、==、__
可在分隔符中添加标题
@startuml
class Foo1 {
You can use
several lines
..
as you want
and group
==
things together.
__
You can have as many groups
as you want
--
End of class
}
class User {
.. Simple Getter ..
+ getName()
+ getAddress()
.. Some setter ..
+ setName()
__ private data __
int age
-- encrypted --
String password
}
@enduml
在UML中还可以使用部分HTML标签
<b>、<u>、<i>、<s>、<del>、<strike>、<font color="#FFFFFF">、<color:#FFFFFF>、<size:nn>、<img src="file">
泛型:
@startuml
class Foo<? extends Element> {
int size()
}
Foo *- Element
@enduml
包:package
包样式:Node、Rectangle、Folder、Frame、Cloud、Database
类图中的概念:
Dependency(依赖):
- 在类中用到了对方
- 类的成员属性
- 方法的返回类型
- 方法的接收参数类型
- 方法中使用到
Generalization(泛化【继承】、是依赖关系的特例):
- 如果A类继承了B类,就说A和B存在泛化关系
Implementation(实现、是依赖关系的特例):
- 对接口或抽象类的实现
Association(关联、是依赖关系的特例)
Aggregation(聚合关系、是关联关系的一种特例、也是依赖关系的一种特例):
- 是整体与部分的关系,但是整体与部分可以分开
Composition(组合关系)
- 也是整体与部分的关系,但是整体与部分不能分开