UML图记忆技巧
什么是UML类图
- Class Diagram:用于表示类、接口、实例等之间相互的静态关系
- 虽然名字叫类图,但类图中并不只有类
记忆技巧
UML箭头方向:
从子类指向父类
我相信 很多同学都会有和我一样的想法,认为子类是以父类为基础的,箭头应该父类指向子类
那么我们改如何去记忆呢?
- 定义子类需要通过extends关键字去指定父类
- 子类一定是知到父类定义的,但父类不知道子类的定义
- 只有知道对方的定义才能指向对方
- 所以箭头的方向是子类指向父类
线的含义
实线 -->继承 虚线-->实现
- 可以看到 大雁是一个类 实现的某个接口 是由它指向接口 因为接口不知道有大雁的定义
- 鸭是的父类 唐老鸭只是其中的一个子类 所以是由它指向父类鸭

如何记忆呢?
- 空心三角形代表: 继承或者实现
- 实现-继承: is a的关系,扩展目的,不虚,很结实
- 虚线-实现: 虚线代表 ‘ 需 ’ 无实体
实线 -->关联 虚线-->依赖
- 关系稳定,实打实的关系,铁哥们
- 表示一个类对象和另一个类对象有关联
- 通常是一个类中有另一个类对象做为属性
- 可以看到 企鹅的出现是和气候是有关系的 所以他们是关联关系

- 虚线-->依赖
- 临时用一下,若即若离,虚无缥缈,若有若无
- 表示一种使用关系,一个类需要借助另一个类来实现功能
- 一般是一个类使用另一个类做为参数使用,或作为返回值

菱形
- 菱形就是一个盛东西的器皿(例如盘子)
聚合∶代表空器皿里可以放很多相同东西,聚在一起(箭头方向所指的类)
组合∶代表满器皿里已经有实体结构的存在,生死与共
整体和局部的关系
弱关系
消极的词:弱-空

整体与局部的关系,和聚合的关系相比,关系更加强烈两者有相同的生命周期,contains-a的关系
强关系
积极的词∶强-满


UML图记忆技巧的更多相关文章
- 【UML】如何看Android的UML图
UML图有很多类型,这里只讨论最重要也最常用的两种 - 类图和时序图. 1. 类图 通过类图,我们可以很容易的了解代码架构,理清模块之间的关系, 包括继承(Inheritance),实现(realiz ...
- 图解Android - 如何看Android的UML 图?
如何看UML图? UML能给我们带来什么? 这是本文要寻找的答案.UML图有很多类型,我们这里只讨论最重要也最常用的两种 - 类图和时序图. 1. 类图 通过类图,我们可以很容易的了解代码架构,理清模 ...
- [设计模式] 读懂UML图
类之间关系(由强到弱) realize(继承):三角+实线(指向类),继承类(SUV是一种汽车) generalization(实现):三角+虚线(指向接口),实现接口(汽车是一种车) composi ...
- UML图中经常用到几种的关系图例
学习这个东西挺奇怪的,时间一长就容易忘记,或者记不清楚.今天看到一些UML图的关系,发现有些出入了,索性就写下来,以后再忘记的时候过来看看. 在UML的类图中,常见的有以下几种关系: 继承(Gener ...
- 用rose画UML图(用例图,活动图)
用rose画UML图(用例图,活动图) 首先,安装rose2003,电脑从win8升到win10以后,发现win10并不支持rose2003的安装,换了rose2007以后,发现也不可以. 解决途径: ...
- 【转】UML图与软件开发过程那点关系
首先,软工文档, 软工文档,也就是计划,设计,描述,使用软件的一些文件,它最大的特点就是固定不变,用来给不同的人和计算机来阅读.在期间,文档起到了桥梁的作用,看这张图很形象: 在这里在看一下国家统一规 ...
- 第一篇:Retrofit主要类UML图
2016-05-06 16:07:09 1.先上一张Retrofit的代码结构图: 可以看到,Retrofit自身的结构很简单,代码量也不是很大.红色框部分是一些注解类,就是一些标记. 简单的看一下客 ...
- [zt]Singleton和Double-Checked Locking设计模式—UML图及代码实现
Singleton和Double-Checked Locking设计模式,分别指的是单例模式和双重检查锁模式,它们都可以用于确保某个类只有一个对象实例化. 两个模式的区别在于:Singleton模式用 ...
- Eclipse自动生成UML图(转载)
*ModelGoon是什么? 它是一个Eclipse插件,用于基于UML图的模型设计,以及逆向工程(即从已有源代码生成类图等,以作为代码分析或者文档使用). *适用条件 ModelGoon目前最新的版 ...
随机推荐
- jsp第二周作业
1.p39 实验2 显示当前时间,并输出上午(0-12)好,下午好(13-17),晚上好(18-23) <%@ page language="java" import=&qu ...
- MySQL 视图简介
概述 数据库中关于数据的查询有时非常复杂,例如表连接.子查询等,这种查询编写难度大,很容易出错.另外,在具体操作表时,有时候要求只能操作部分字段. 为了提高复杂 SQL 语句的复用性和表的操作的安全性 ...
- jointJS初使用随记
jointJs使用随记 1.下载与安装 前提:一个健康良好且干净的vue脚手架项目. 还是普遍的安装方式 yarn:yarn add jointjs npm:npm install jointjs 还 ...
- Django显示本地图片,注意事项
1.在url.py文件中的配置 导入相关的库,在Python2.0后,要用re_path from django.urls import path,re_path from django.views. ...
- zookeeper篇-zoo.cfg配置
点赞再看,养成习惯,微信搜索「小大白日志」关注这个搬砖人. 文章不定期同步公众号,还有各种一线大厂面试原题.我的学习系列笔记. zoo.cfg即/usr/local/java/zookeeper/co ...
- docker:compose安装
compose:独立于docker的程序,可以做多容器app 安装docker-compose: 下载docker-compose文件: curl -L https://github.com/dock ...
- FreeRTOS --(0)简介
转载自https://blog.csdn.net/zhoutaopower/article/details/106541595 FreeRTOS 是一个嵌入式实时操作系统,具有相对(相对 Linux. ...
- 【hexo博客搭建】将搭建好的hexo博客部署到阿里云服务器上面(下)
一.部署到阿里云服务器 既然博客也已经成功在本地部署,然后主题也成功安装,接下来就可以部署到服务器上面了,如果你也想要魔改matery主题,可以去各种博客上面找一找大佬的教程,或者联系我,也可以让你少 ...
- re模块,正则表达式起别名和分组机制,collections模块,time与datetime模块,random模块
re模块和正则表达式别名和分组机制 命名分组 (1)分组--可以让我们从文本内容中提取指定模式的部分内容,用()来表示要提取的分组,需要注意的是分组 是在整个文本符合指定的正则表达式前提下进行的进一步 ...
- SQL连接查询优化[姊妹篇.第五弹]
上篇的sql优化篇章,更多偏向于优化的思想概念,先前抛出的4个优化问题中,篇幅过长,只对前两个问题进行了解析. 接下来我们一起来谈谈sql的连接查询优化,更偏向于实际运用,并对如下两个问题进行探讨.篇 ...