前言
这个可以用来建模,不过现在的建模都是用更加专业的工具来做复杂的建模。
这个可以用来表现一些基础的数据解构关系还是不错的。
我们从一个例子贯穿全文!
基础语法
属性修饰符
| 修饰符 | 解释 |
|---|---|
| + | Public(开放属性) |
| - | Private(私有属性) |
| # | Protected(受保护) |
| ~ | Package(包|模块) |
表现修饰符
| 修饰符 | 解释 |
|---|---|
| <!— | Inheritance(继承) |
| *__ | Composition(组合函数,可以理解为 mixin) |
| o— | Aggregation(聚合) |
| —> | Association(关联|联系) |
| — | Link(链接) |
关系修饰符
| 修饰符 | 解释 |
|---|---|
| 0..1 | 0或1 |
| 1 | 只有1 |
| 1..* | 1或无限 |
| * | 无限多 |
| n | 至少大于1 |
| 0..n | n 大于1时侯,0到 n 个 |
| 1..n | n 大于1时侯,1到 n 个 |
基础声明
classDiagram人 <|-- 亚洲人人 <|-- 日本人人 -- 美国人人 : +int 年龄人 : +String 性别人: +Boolean 是否存活亚洲人 "1" --> "1" 日本人class 亚洲人{+String 黄皮肤+Array 文化多种多样}class 日本人{-Boolean 人口老龄化严重-Boolean 女性肤白貌美#Boolean 萌妹子出口~Boolean 大部分文化从大中华进口}class 美国人{~Boolean 横行霸道~Boolean 随意干涉他国内政#String 心算能力就是个渣(美名其曰我们推崇工具)}
接口及枚举声明
接口使用的修饰符<<interface>>
枚举使用的修饰符<<enumeration>>
classDiagramclass Shape{<<interface>>noOfVerticesdraw()}class Color{<<enumeration>>REDBLUEGREENWHITEBLACK}
总结
这图我基本不用,用这个来建模太痛苦,表现力也不是很完美。
建模还是得用专业的建模工具来表现,不仅仅表现上,维护上和可读性上都碾压。
