UML第二次作业:类图中类的表示

学习要求及步骤:

1:学习PlantUML类图绘制方法

2:以班级学生管理系统中的 —— “学生”类为例,分析属性、方法

3:用PlantUML编写 “学生”类绘图脚本;

4:在线绘制学生,导出生成的用例图。

一:PlantUML类图

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

类之间的关系:

(1)泛化, Generalization : <|--

(2)关联, Association : <--

(3)组合, Composition : *--

(4)实现, Realization:<|..

(5)聚合, Aggregation : o--

(6)依赖, Dependency : <..

以上是常见的六种关系, -- 可以替换成 .. 就可以得到虚线。另外,其中的符号是可以改变方向的

例如: <|-- 表示右边的类泛化左边的类; --|> 表示左边的类泛化右边的类。

例如:

 

生成的类图如下:

 

 

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

 

生成的类图如下:

 

 

关系上的标签:

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

生成的类图如下:

 

可以在关系上使用 < 或者 > 表名两个类之间的关系

生成的类图如下:

上面的类图意思是:

Driver驾驶Car

Car有4个Wheel

Person拥有Car

添加方法:

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

 

 

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

生成的类图如下:

定义可见性:

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

- :private

# :protected

~ :package private

+ :public

例如:

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

抽象和静态:

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

也可以使用{classifier}代替{static}。

 

类主体:

默认的,字段和方法是由PlantUML自动分组的,也可以使用 : -- .. == __ 这些分隔符手动进行分

注释和原型
原型使用class,<< 和 >> 进行定义。

注释使用note left of,note right of,note top of,note bottom of关键字进行定义。

你也可以在最后一个定义的类上使用 note left,note right,note top,note bottom关键字。

注释可以使用 .. 与其他对象进行连接。

注释的其他特性
注释可以使用一些html标签进行修饰:

<b>
<u>
<i>
<s> , <del> , <strike>
<font color="#AAAAAA"> 或者 <font color="colorName">
<color:#AAAAAA> 或者 <color:colorName>
<size:nn> 该表font大小
<img src="http://blog.javachen.com/2016/02/29/file"> 或者 <img:file> ,文件必须是可以访问的。

连接上的注释:

可以在连接上定义注释,只需要使用 note on link,你可以使用 note left on link,note right on link,note top on link,note bottom on link来改变注释的位置。

抽象类和接口

可以使用 abstract或者 interface来定义抽象类或者接口,也可以使用 annotation,enum关键字来定义注解或者枚举。

使用非字母

类名可以使用非字母的方式显示

隐藏字段和方法

隐藏类

使用泛型

命名空间

改变箭头方向

 

二、以班级学生管理系统中的 —— “学生” 类为例,分析属性、方法

属性:

学生基本信息(姓名,学号,年龄,班级,职务)
学生课程信息(课程名,上课教室,老师姓名)
学生成绩信息(学号,姓名,成绩)

三:用PlantUML编写 "学生"类绘图脚本;

@startuml

class 学生个人信息 {

  -姓名:string
  -学号:varchar
  -年龄:varchar
  -班级:string
  -职务:string
  __
  +登录
  +修改个人信息
  +退出登录
}
class 学生课程信息{
  -课程名:string
  -教室:string
  -老师:string
  __
  +登陆
  +选课
  +退出
  +查看课程
  +课程成绩
}
class 学生成绩 {
  -学号:varchar
  -姓名:string
  -成绩:varchar
  __
  +登陆
  +查看成绩
  +退出
}
学生课程信息 --> 学生个人信息
学生成绩-left-> 学生个人信息
@enduml

四:用例图

 

 

 

 

posted on 2019-04-03 15:04  方华*  阅读(832)  评论(1编辑  收藏  举报