使用powerDesigner绘制类图

  • 因为后面要理清楚spring中类与类之间关系,我们来看看如何使用powerDesigner绘制类图
  • 你要去下载powerDesiger,一路下一步安装好
  • 打开,点【file】-【New Model】

  • 选择【Model types】-【Object-Oriented Model】-【Class Diagram】-【java】-【ok】

  • 利用右侧的toolbox构建

  • 既然要画类图,类与类之间的关系你是要知道的:
  1. 泛化 generalization
  2. 实现 Realization
  3. 关联 Association   
  4. 聚合 Aggregation
  5. 组合 Composition
  6. 依赖 Dependency

泛化

子类继承父类

实现

实现类继承接口

关联

是一种拥有的关系, 它使一个类知道另一个类的属性和方法,这个概念听起来感觉有点蒙,其实吧,就是一个对象A中持有对象B的引用,这样对象B中的属性和方法是不是A也知道了,就是这个意思,在实际的代码中体现在一个类上声明一个成员变量

类A中有类B的引用

类Person 中有 类 Address

聚合

是整体与部分的关系, 且部分可以离开整体而单独存在,如车和轮胎是整体和部分的关系,轮胎离开车仍然可以存在

聚合关系是关联关系的一种,是强的关联关系;关联和聚合在语法上无法区分,必须考察具体的逻辑关系

比如一个学校有高中部和初中部,这些学生加起来都是属于这个学校的,那么从聚合的概念上讲整体就是这个学校,部分就是学生了,且部分可以离开整体而单独存在,这意思是说学生可以转校去别的学校,但是这个学校还是存在的,不会因为一个学生转校了找个学校就没了,

箭头指向:带空心菱形的实心线,菱形指向整体

组合

是整体与部分的关系, 但部分不能离开整体而单独存在. 如公司和部门是整体和部分的关系, 没有公司就不存在部门

组合关系是关联关系的一种,是比聚合关系还要强的关系,它要求普通的聚合关系中代表整体的对象负责代表部分的对象的生命周期

代码体现:成员变量

箭头指向:带实心菱形的实线,菱形指向整体

比如一个大厦肯定是由很多种材料构成的,如果没有这些材料,这大厦就不存在了,意思是这个大厦生命周期over了,

依赖

是一种使用的关系,  即一个类的实现需要另一个类的协助,所以要尽量不使用双向的互相依赖

代码表现:局部变量、方法的参数或者对静态方法的调用

箭头指向:带箭头的虚线,指向被使用者

各种关系的强弱顺序:

泛化 >实现>组合> 聚合> 关联> 依赖

最后把这些关系在java代码中的体现总结下:

1) 依赖关系:关系对象出现在局部变量或者方法的参数里,或者关系类的静态方法被调用 
(2) 关联关系:关系对象出现在实例变量中 
(3) 聚合关系:关系对象出现在实例变量中 
(4) 组合关系:关系对象出现在实例变量中 
(5) 泛化关系: extends 
(6) 实现: implements

具体使用请浏览这位台兄的 博客:https://www.cnblogs.com/ganqiyin/p/3156991.html

使用powerDesigner绘制类图的更多相关文章

  1. 【PowerDesigner】【10】绘制类图

    前言:我感觉我也是一知半解,参考博客的内容会比我的文章更有帮助 用途:描述项目中类与类的关系(即描述java文件) 正文: 1,新建oomFile→New Model→Model types→Obje ...

  2. 【UML九种图系列】之如何利用三层来绘制类图、时序图?

    UML并发视图:实体之间行为的交互,是动态.分为:时序图.协作图.状态图.活动图 一.时序图简述: 时序图(Sequence Diagram):描述对象之间的交互行为,按照时间顺序排列. 元素: 角色 ...

  3. UML作业第三次:分析《书店图书销售管理系统,绘制类图

    plantuml类图绘制方法的学习: 1.关于类图的学习: 类图显示了系统的静态结构. 类:类图中的主要元素,用矩形表示.矩形的上层表示类名.中层表示属性.下层表示方法. 类之间的关系:关联.依赖.聚 ...

  4. UML作业第三次:分析《书店图书销售管理系统》,绘制类图

    一. 类图语法学习小结(类间关系的表示方法) 1.抽象类和接口 我们用关键字abstract或abstract class来定义抽象类(抽象类用斜体显示).也可以使用interface,annotat ...

  5. CentO7-使用plantuml绘制UML类图

    准备工作 到PlantUml官网(http://plantuml.com/download)下载plantuml.jar.官网上还有一个在线的demof服务.plantuml的官网真的很挫! 到官网下 ...

  6. 面向对象的照妖镜——UML类图绘制指南

    1.前言 感受 在刚接触软件开发工作的时候,每次接到新需求,在分析需求后的第一件事情,就是火急火燎的打开数据库(DBMS),开始进行数据表的创建工作.然而这种方式,总是会让我在编码过程中出现实体类设计 ...

  7. 转:深入浅出UML类图(具体到代码层次)

    深入浅出UML类图 作者:刘伟 ,发布于:2012-11-23,来源:CSDN   在UML 2.0的13种图形中,类图是使用频率最高的UML图之一.Martin Fowler在其著作<UML ...

  8. JAVA类图

    类与类图 类(Class)封装了数据和行为,是面向对象的重要组成部分,它是具有相同属性.操作.关系的对象集合的总称. 在系统中,每个类具有一定的职责,职责指的是类所担任的任务,即类要完成什么样的功能, ...

  9. 深入浅出UML类图

    原作者:http://www.uml.org.cn/oobject/201211231.asp 在UML 2.0的13种图形中,类图是使用频率最高的UML图之一.Martin Fowler在其著作&l ...

随机推荐

  1. 出现java.lang.NoClassDefFoundError: org/apache/commons/collections/FastHashMap错误问题解决

    首先出现这个问题,你应该是用了 BeanUtils.populate(meter,map); import org.apache.commons.beanutils.BeanUtils;并且导入了co ...

  2. Java编译与反编译命令记录

    1.首先进入java文件所在的地址 1) e:/ 2) dir     (显示所有文件) 3) cd eclipse-workspace 2.使用javac命令编译Test.java文件,得到Test ...

  3. Linux-c 线程锁

      typedef struct _my_mutex { pthread_mutex_t mutex; //互斥锁 pthread_mutexattr_t mta; //互斥锁属性 } my_mute ...

  4. tensorboard在Mac OS X系统环境下如何启动

    再次必须写一篇博客,一次来说明这打开tensorboard的艰难之路,遇到了好多错误,真的是走了好多弯路,最后还是解决了 一开始总是报错,不知道是为什么,其实还是自己没有看懂原理,就冲动的开始招呼画瓢 ...

  5. Sky Code

    Sky Code 给出n个数,求选出4个数组合,使其gcd为1,,\(n<=10000\),每个数\(<=10000\). 解 理解1:容斥原理 注意到Mobius反演式子不好写出,于是我 ...

  6. ZOJ2562

    ZOJ2562https://vjudge.net/problem/11781/origin<=n的且因子数最多的那个数做法:同因子数取最小,dfs更新答案 #include <iostr ...

  7. 83 落单的数 II

    原题网址:http://www.lintcode.com/zh-cn/problem/single-number-ii/ 给出3*n + 1 个的数字,除其中一个数字之外其他每个数字均出现三次,找到这 ...

  8. iOS开发CATransform3D.h属性详解和方法使用

    1.CATransform3D简介 layer有个属性transform,是CATransform3D类型.可以使其在三维界面作平移.缩放和旋转单独或组合动画! CATransform3D结构体: / ...

  9. 用Axure RP7创建响应式原型教程

    自从几年前响应式技术开始应用时,创建响应式原型就成为了很多人苦恼的事情.响应式设计用一种非常优雅的方式处理为多种设备类型使用HTML和CSS编码的应用,但是提供给UX专业人士的原型工具却没有具备同样品 ...

  10. java基础之完数判断

    完数: 完全数(Perfect number),又称完美数或完备数,是一些特殊的自然数.它所有的真因子(即除了自身以外的约数)的和(即因子函数),恰好等于它本身.如果一个数恰好等于它的因子之和,则称该 ...