Rumah >Java >javaTutorial >Java文件转换成UML类图如何使用MyEclipse实现的图文详解

Java文件转换成UML类图如何使用MyEclipse实现的图文详解

黄舟
黄舟asal
2017-09-16 10:56:163098semak imbas

用MyEclipse将java文件转换成UML类图

 在学习设计模式或者与别人交互设计模式的思想时,UML类图的制作是必不可少的。通常,我们会直接绘制UML类图,对于学生来说,通用的工具就是微软的Visio,这个工具想必大家经常用来画各种图,流程图、网络图、数据流图,当然可以画UML类图,使用起来十分方便,不过Visio的鸡肋之处就是不支持JAVA的UML类图,估计是微软自家开发,就支持自家VS下的C和C++吧。暂且不说这个,那么JAVA程序员如何绘制UML类图呢?大家可以直接在eclipse下新建一个UML工程,然后按照UML类图的绘制方法进行绘制即可,但是这不是本篇文章的重点。很多初学者或者起初没有画UML类图的人,在写完一个项目后,想概览下自己设计的JAVA程序的UML类图是什么样的,这个时候再去一步步绘制UML类图就太麻烦了,估计大家都不愿意去做这个事情,那么有没有一种办法可以直接将设计转换成UML类图以供浏览呢?回答当然是:有。方法有很多种,本篇文章只介绍我经常用的一种。

 

    准备工具:MyEclipse或者Eclipse及UML插件(Green),插件链接是:点击打开链接

 

    本篇文章使用MyEclipse2015,这个有破解版的,挺好用的,很多插件都有,所以我一直用的这个,由于是在校内下载的,所以没有链接,大家可以自行到网上找下。

 

    第一步,准备一个已经设计好的工程,里面至少要有两三个类及一些接口,还有它们直接的继承实现关系什么的,这样转换后才有意义。我的工程见图1。

 

图1 步骤1

 

    第二步,通过点击New--Other,按照图2的选项,新建一个UML模型,这里有两个可供选择,都可以,我比较喜欢使用2。

 

图2 步骤2

 

    第三步,在点击新建UML2 Model后,会弹出下面的选项,如图3所示,这里需要选择UML的文件夹。

 

图3 步骤3

 

    第四步,建好UML模型后如图4所示,紧接着大家就可以直接在里面绘制UML类图了,不过这些步骤对于直接将JAVA文件转换成UML类图是多余的。

 

图4 步骤4

 

    第五步,其实是直接生成UML类图的第一步。以本工程为例,直接右键点击工程中的包“headfirst.adapter.ducks”,然后弹出一系列选项,紧接着点击MyEclipse---Generate UML2 Class Diagram...,出现图5所示的界面,输入UML类图的名称后点击Finish即可,生成的UML类图如图6所示。

 

 

图5 步骤5

 

图6 生成的UML类图

 

    总之,前面四步主要是说怎样新建一个UML模型然后使用其画图,第五步介绍的是直接用一个工程中的包内的JAVA文件生成UML类图的方法。方法不限于这一种,欢迎大家补充。

 

 


简单看下目录结构和UML用例图:

目录结构预览:

用例图预览:

 

 

详细步骤(也不多,共五步):

一、新建JAVA工程

打开MyEclipse->New->Java Project->输入工程名称(TV)->Finish  (->如果这时有弹窗选择yes)

二、创建UML用例图

先展开工程根目录,右击src->New->Other->在列表中找到并展开MyEclipse->再在展开项中找到UML并展开->UML1 Model->Next->起个名(TV)->Finish->yes(如果有的话就yes,没有就算了)

 

三、画UML

根据上面的UML预览图,将UML用例图画出来(这个步骤不难,根据下面步骤图画就行,双击类图或者接口图中相应位置就能输入图中的代码)

四、通过UML生成JAVA类

在菜单栏中选择UML->Generate Java...->Select All->Finish->yes(如果没保存用例图,就会弹出保存提示,选yes就行)

五、补充完整

将生成的每个类中的代码也补充完整,因为类中的方法都是空的

补完其他辅助类和文件

 

Atas ialah kandungan terperinci Java文件转换成UML类图如何使用MyEclipse实现的图文详解. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn