什么?你还不会用IDEA类图?

发现身边很多老哥还不是很会用idea里这个Diagram(图表)的功能,其实这就是一个看UML关系图的功能,非常好用,学会以后让你的idea起飞。相信我,真的很好用。

image-20200927131225045

如何进入

首先我们要知道怎么进这个图标生成的界面?主要有两种方式,我们在当前代码区,选中想要生成类的Diagram,鼠标右击,找到Diagrams,

image-20200927131755323

可以看到这里有两个选项,一个是Show Diagrams,一个是Show Diagrams Popup,popup的意思是弹出,我们看一下两个有什么区别

Show Diagrams

选中Show Diagrams后,打开一个新窗口,并且命名为List,

image-20200927132017882

如果我们想保存到本地,就右击

image-20200927132201563

选择你想保存的路径即可,名字当然也是随便你取的啦

image-20200927132237510

我们仔细看,发现文件的尾缀是什么?.uml格式的,UML是啥不用我多说了吧,这里先介绍如何进入Diagrams界面,后面操作后面介绍,我们来看看第二种Popup的和第一种有什么区别。

Show Diagrams Popup

image-20200927132403135

可以看到直接就在当前页面弹了一个缩略图,这里List接口实现自Collection,Collection接口实现自Iterable就不用我多说了吧,集合很重要哦。

这种是直接在指定代码里进入UML图编辑模式的,还有一种是直接在文件目录树里也可以右击进入,这种方法也要会哦,如果源码你都找不到他在哪个包里,不合适吧

image-20200927132639636

UML模式下的操作

基础操作

鼠标左键:框选对象

Ctrl+鼠标左键:移动图层

鼠标滚轮:正常滑动

Ctrl+鼠标滚轮:放大缩小

(可能概括的不专业,但是你去试一下就知道我说的什么意思,这是最基础的操作,不会很难受)

如果类太多导致很小看不清,按住Alt移动鼠标有放大镜的效果(有点憨憨)

img

添加类

我们首先以ArrayList来举例,以ArrayList进入UML模式,怎么进上面教了哈,别问了

image-20200927132941916

进来以后,直接得到这个图,接口就用绿色的“I”来表示,类就用“C”来表示,可以看到图中有三种线,我们看看ArrayList的实现关系如下

image-20200927133218145

不难猜出

蓝色实线:继承关系

绿色虚线:接口实现关系

绿色实线:接口与接口的关系

我们知道实现List接口的还有LinkedList对吧,我也想拖进来看看怎么办?直接右击List,

image-20200927134408708

Add Class to Diagrams后,在全局搜索框里,搜索LinkedList

image-20200927134447182

选中以后就自动补入

image-20200927134513747

还可以直接在左边的目录里直接拖进来

在这里插入图片描述

别问我LinkedList在哪个目录下哈

删除类

直接鼠标选中,delete就完了哈,如果类很多,删掉一边导致另一边排版不均匀,不用担心,idea会自动排版的亲。

UML下工具栏介绍

image-20200927135215352

刚进来就看到这个,你们肯定很好奇都是干啥的吧,下面一一介绍下哈,别嫌啰嗦,用的少的我就一笔带过,常用的学一哈

字段方法等

image-20200927135347458

这五个从左到右分别是,字段(fields),构造方法(Constructors),方法(Methods),配置文件(Properties),内部类(Inner Class),别一看到蓝色的I就以为是接口哈,接口是绿的~

我们到LinkedList源码里看一下,这些分别对应什么

UML图内跳源码

右击!jumpjumpjump!

image-20200927140007550

源码很长很复杂,不想看?我也不想看,我们偷懒,看看源码的结构就行

image-20200927140058280

一眼看过去有三种——字段、方法和构造方法

image-20200927140245332

那我们在刚才的UML图里分别点一下,会怎样呢?

image-20200927140421855

一窝蜂全来了是吧,咱不需要看这么多方法咋办,这就失去了看UML图的初心了,

右击,点击 Change Visibility Level

image-20200927140617854

这里可以选择我们查看对象的权限范围,如果选择Protect,表示只查看Protect权限以上的方法。

Properties和InnerClass用的较少,按需使用即可

调整范围

image-20200927140937424

这里从左到右分别是 改变可视级别(Change Visibility Level)、改变范围(Change Scope)、边缘创建模式(Edge Creation Mode)、查看依赖关系(Show Dependencies)

第一个改变可视级别上面已经讲了,功能一样。

第二个改变范围和第三个边缘创建模式咱也没用过,没发现有什么具体用法。

第四个查看依赖关系点了以后可以看到类之间的依赖关系

image-20200927141900785

排版布局组件

image-20200927141926934

最后几个,+号放大,-号缩小,跟xmind的zoom in,zoom out类似,1:1是对应比例,后面一个带箭头的小窗户表示适应当前窗口大小,会帮你调整到适合当前窗口大小的最佳比例。

最后四个功能分别是,应用当前布局,保存,导出,打印功能,后三个不再介绍,应用当前的功能如下

在这里插入图片描述

如果对idea系统的排版不满意,可以拖住类图自定义排版的哦(不如用自动排版,反正直男不会排版)

image-20200927143251093

UML内操作

当前类

image-20200927142829707

Show Implementations

查看该类实现和继承

image-20200927143030631

Show Parents

查看类实现或继承与谁(爸爸和叔叔是谁)

image-20200927143101089

Jump To Source

对着类选中,就是去选中类的源码

image-20200927143651486

最后放一张我自己做的Java集合框架的UML图,大家也可以来交作业哦

image-20200927143949341

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐