plantuml样式_PlantUML类图的写法

本文详细介绍了PlantUML创建类图的各种方法,包括不同类型的类关系(泛化、关联、组合、聚合、实现、依赖)、关系标签、类图中的方法、可见性、抽象和静态、类主体、注释和原型、连接上的注释、抽象类和接口、使用泛型、包、命名空间、改变箭头方向、标题和设置图例等。通过实例展示了如何绘制和定制复杂的类图。
摘要由CSDN通过智能技术生成

PlantUML类图

PlantUML用下面的符号来表示类之间的关系:类之间的关系

泛化, Generalization: 

关联, Association: 

组合, Composition: *--

聚合, Aggregation: o--

实现, Realization: 

依赖, Dependency: <..>

以上是常见的六种关系, --可以替换成 ..就可以得到虚线。另外,其中的符号是可以改变方向的,例如: 表示左边的类泛化右边的类。

例如,下面的是 --:

@startuml

Class01

Class03

Class05 *-- Class06:组合

Class07 o-- Class08:聚合

Class09 -- Class10

@enduml

生成的类图如下:

141202630_1_20180813094854553

--可以替换成 ..,对应的虚线:

@startuml

Class11

Class13 <.. class14:>

Class15 *.. Class16

Class17 o.. Class18

Class19 .. Class20

@enduml

生成的类图如下:

141202630_2_20180813094855819

关系上的标签

可以在关系上添加标签,只需要在文本后面添加冒号和标签名称即可。可以在关联的两边使用双引号。例如:

@startuml

Class01 "1" *-- "many" Class02 : contains

Class03 o-- Class04 : aggregation

Class05 --> "1" Class06

@enduml

生成的类图如下:

141202630_3_20180813094856662

你可以在关系上使用 表名两个类之间的关系,例如:

@startuml

class Car

Driver - Car : drives >

Car *- Wheel : have 4 >

Car -- Person : < owns

@enduml

生成的类图如下:

141202630_4_20180813094857475

上面的类图意思是:

Driver 驾驶 Car

Car 有4个 Wheel

Person 拥有 Car

添加方法

在类名后面添加冒号可以添加方法和方法的参数,例如:

@startuml

Object

Object : equals()

ArrayList : Object[] elementData

ArrayList : size()

@enduml

生成的类图如下:

imgr?src=http%3A%2F%2Fplantuml.com%3A80%2Fplantuml%2Fpng%2Fyq_AIaqkKR2fqTLLS2mgIgpqoImkuUBoXmXRAQGMbYRc56jeSi4bWO8GsUXOXTISrDpKl1ANn99450N5cLMfG3q0

也可以使用{}来定义所有的字段及字段和方法,例如:

@startuml

class Dummy {

String data

void methods()

}

class Flight {

flightNumber : Integer

departureTime : Date

}

@enduml

生成的类图如下:

141202630_5_20180813094858506

定义可见性

以下符号定义字段或者方法的可见性:

-: private

#: protected

~: package private

+: public

例如:

@startuml

class Dummy {

-field1

#field2

~method1()

+method2()

}

@enduml

141202630_6_20180813094859334

你可以使用skinparam classAttributeIconSize 0关掉icon的显示:

@startuml

skinparam classAttributeIconSize 0

class Dummy {

-field1

#field2

~method1()

+method2()

}

@enduml

141202630_7_20180813094901256

抽象和静态

你可以使用 {static}或者 {abstract}来修饰字段或者方法,修饰符需要在行的开头或者末尾使用。你也可以使用 {classifier}代替 {static}。

@startuml

class Dummy {

{static} String id

{classifier} String name

{abstract} void method

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值