统一建模语言(UML)

简介

统一建模语言 UML(Unified Modeling Language)可以帮助我们表示软件的结构,不同的模块,类和对象如何相互交互,以及他们之间的关系是什么。

uml经常与面向对象的设计结合使用,他具有更广泛的适用范围。

UML分类

统一建模语言 UML(Unified Modeling Language),又可以静动分为静态视图和动态视图。静态图分为:用例图,类图,对象图,包图,构件图,部署图。动态图分为:状态图,活动图,协作图,序列图。

我平常用到最多的就是

  • 序列图-时序图(Sequence Diagrams)
  • 类图

UML工具生成类图:

1. IntelliJ IDEA

提供了可以查看类图的快捷键:

点击右键,选择 Diagrams,其中有 show 和 show … Popup,前者新建在标签页内,后者以浮窗的形式展示。

IntelliJ IDEA查看类的继承关系图形

2. Android studio

没有内置diagrams。可以下载 UML插件:SimpleUML,具体可以查看stack overflow连接。

stack overflow:
How to generate Class Diagram (UML) on Android Studio

3. power designer

3.1 power designer来将 java代码生成类图

我们也可以通过power designer来将 java代码生成类图。

文件->新建模型

然后 如图选择 ObjectOrientedModel :
image

以java为例:

语言->reverse engineer java

将所选择的java文件添加进去。点击确定。

然后点击查看即可:
image

注意:需要双击 包名下的classDiagram_1文件才能看到类图。

image

3.2 类图生成java代码
  1. 去掉注释: 语言->edit current object language -> Java::Generation\Options\GenerateOID
    在这里插入图片描述在这里插入图片描述
  2. 语言->generate java code
    在这里插入图片描述
  3. 选择生成文件和路径
    在这里插入图片描述
  4. 查看生成的路径
    在这里插入图片描述
    在这里插入图片描述

uml类图关系画法

依赖关系

用于定义一个类以某种方式依赖于另一个类,而另一个类可能依赖于或不依赖于第一个类。
被称为: Use-A关系

A类是B类的变量 ,而A类持有B类的引用。
image

泛化关系(Generalization)

当一个类表示多个类的共享特征的时候,就称为泛化。
描述继承关系称为泛化。
继承也被称为Is-A关系。

相当于java中的继承或者实现。
image

关联关系(association)

图中依次为 单项关联 双向关联 自关联。

image

实现关系

java中的实现接口

image

聚合关系

聚合视为Has-A关系。

表示整体和部分的关系。重点是整体和部分可以分开。
比如学生和学校,但是学生可以离开学校去网吧。

image

组合关系

和聚合比较像,但是 是强引用的关系,一般认为是不可分开的,当主类不再存在的时候,依赖类也不再存在。

image

发布了93 篇原创文章 · 获赞 26 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/sxj159753/article/details/102172902