使用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. SecureCRT 64位 破解版和安装,以及解决乱码问题

    链接:https://pan.baidu.com/s/1q1DEmohK7ISNJ7UbJkN3jw 提取码:yea3 复制这段内容后打开百度网盘手机App,操作更方便哦 securecrt 破解版是 ...

  2. spring:AOP面向切面编程02

    参考: https://blog.csdn.net/jeffleo/article/details/54136904 一.AOP的核心概念AOP(Aspect Oriented Programming ...

  3. 试做Chrome插件——whatweb的chrome插件(从老博客转)

    引子 最近一个月每天早上在学Javascript,刚学完基础语法和一点点jQuery,今天忍不住写个Chrome玩玩看看自己对JavaScript的掌握怎么样了. 目标 考虑了一下,打算做个小东西,但 ...

  4. Android开发 处理拍照完成后的照片角度

    private void initImageAngle(){ Bitmap imageBitmap = BitmapFactory.decodeFile(FilePathSession.getFace ...

  5. openSUSE 安装compass,mkmf.rb can't find,checking for ffi.h...extconf.rb failed

    安装compass时,提示 Fetching: sass-.gem (%) Successfully installed sass- Fetching: ffi-.gem (%) Building n ...

  6. idea-----Idea在不关闭project的情况下进行Import Project

    Idea在不关闭project的情况下进行Import Project 引用:https://blog.csdn.net/qq_28198181/article/details/83069667

  7. [转]MEF学习

    MEF学习 :http://www.cnblogs.com/comsokey/p/MEF1.html C#可扩展编程之MEF学习笔记(一):MEF简介及简单的Demo C#可扩展编程之MEF学习笔记( ...

  8. IOS6 新特性之UIRefreshControl

    "不会模仿的公司不是好公司不会剽窃的公司不是优秀公司  不会调戏代码的不是骨灰级码工 你同意吗? 苹果估计想取代第三方的pull to refresh"        ------ ...

  9. 杂项-公司:Axway

    ylbtech-杂项-公司:Axway Axway 公司是法国Sopra 集团从事应用系统集成(EAI/B2Bi)软件及相关咨询服务业务的全资子公司.Axway公司成立于1980年,总部位于美国凤凰城 ...

  10. kafka分析

    目录 1,kafka简介 2, Kafka Server 2.1,kafka中zookeeper的作用 2.2, Broker 2.2.1,Broker高性能设计 2.2.2,Broker选举机制 2 ...