java设计模式--01类图UML图箭头含义
泛化:
- 表示一个更泛化的元素和一个更具体的元素的关系
- 表现方式主要是继承
- 表示方式:用实线空心箭头表示
实现
- 类和接口之间的关系
- 表示方式:用虚线空心三角形箭头表示,实现类指向接口。
依赖- 是一种使用的关系,即一个类的实现需要另一个类的协助。方法参数需要传入另一个类的对象,就表示依赖这个类。
- 表示方式:虚线箭头。
聚合- 整体个部分的关系,整体和部分可以分开
- 例如:电脑和鼠标
- 表示方式:尾部为空心菱形的实线箭头(也可以没箭头)。
组合
整体个部分的关系,整体和部分不可以分开.
人和头的关系,少一个就不行
尾部为实心菱形的实现箭头(也可以没箭头)
-
依赖
类中用到了对方就是依赖
表示方式 :虚线箭头
关联:
- 依赖关系的一种特例,双向关系和单向关系
- 表示方式一条直线
小结
. 类(Class):使用三层矩形框表示。 第一层显示类的名称,如果是抽象类,则就用斜体显示。 第二层是字段和属性。 第三层是类的方法。 注意前面的符号,‘+’表示public,‘-’表示private,‘#’表示protected。
接口:使用两层矩形框表示,与类图的区别主要是顶端有<>显示 。 第一行是接口名称。 第二行是接口方法。
继承类(extends) :用空心三角形+实线来表示。
实现接口(implements) :用空心三角形+虚线来表示
关联(Association) :用实线箭头来表示,例如:燕子与气候
聚合(Aggregation) :用空心的菱形+实线箭头来表示 聚合:表示一种弱的‘拥有’关系,体现的是A对象可以包含B对象,但B对象不是A对象的一部分,例如: 公司和员工
组合(Composition):用实心的菱形+实线箭头来表示 组合:部分和整体的关系,并且生命周期是相同的。例如:人与头
依赖(Dependency) :用虚线箭头来表示,例如:动物与氧气
类之间的关系 UML把类之间的关系分为以下5种.
- 关联:类A与类B的实例之间存在特定的对应关系
- 依赖:类A访问类B提供的服务
- 聚集:类A为整体类,类B为局部类,类A的对象由类B的对象组合而成
- 泛化:类A继承类B
- 实现:类A实现了B接口 关联(Association)关联指的是类之间的特定对应关系,在UML中用带实线的箭头表示。按照类之间的数量对比,关联 可以分为以下三种:
- 一对一关联
- 一对多关联
- 多对多关联
- 注意:关联还要以分为单向关联和双向关联
泛化(Generalization)泛化指的是类之间的继承关系,在UML中用带实线的三角形箭头表示。
实现(Realization) 实现指的是类与接口之间的关系,在UML中用带虚线的三角形箭头表示。
java设计模式--01类图UML图箭头含义相关推荐
- 【Java设计模式】二、UML图(类图)
统一建模语言(Unified Modeling Language,UML)是用来设计软件的可视化建模语言.它的特点是简单.统一.图形化.能表达软件设计中的动态与静态信息. UML 从目标系统的不同角度 ...
- 架构技能教程-时序图(UML图)的制作
echo编辑整理,欢迎转载,转载请声明文章来源.欢迎添加echo微信(微信号:t2421499075)交流学习. 什么是时序图(UML图)? 时序图(Sequence Diagram),又名序列图.循 ...
- java设计模式之工厂模式(UML类图分析+代码详解)
大家好,我是一名在算法之路上不断前进的小小程序猿!体会算法之美,领悟算法的智慧~ 希望各位博友走过路过可以给我点个免费的赞,你们的支持是我不断前进的动力!! 加油吧!未来可期!! 本文将介绍java设 ...
- java设计模式之建造者模式(UML类图分析+代码详解)
大家好,我是一名在算法之路上不断前进的小小程序猿!体会算法之美,领悟算法的智慧~ 希望各位博友走过路过可以给我点个免费的赞,你们的支持是我不断前进的动力!! 加油吧!未来可期!! 本文将介绍java设 ...
- Java设计模式之模板方法模式(UML类图分析+代码详解)
大家好,我是一名在算法之路上不断前进的小小程序猿!体会算法之美,领悟算法的智慧~ 希望各位博友走过路过可以给我点个免费的赞,你们的支持是我不断前进的动力!! 加油吧!未来可期!! 本文将介绍java设 ...
- Java设计模式之策略模式(UML类图分析+代码详解)
大家好,我是一名在算法之路上不断前进的小小程序猿!体会算法之美,领悟算法的智慧~ 希望各位博友走过路过可以给我点个免费的赞,你们的支持是我不断前进的动力!! 加油吧!未来可期!! 本文将介绍java设 ...
- Java设计模式之组合模式(UML类图分析+代码详解)
大家好,我是一名在算法之路上不断前进的小小程序猿!体会算法之美,领悟算法的智慧~ 希望各位博友走过路过可以给我点个免费的赞,你们的支持是我不断前进的动力!! 加油吧!未来可期!! 本文将介绍java设 ...
- 【冷门实用小工具】JAVA和C#轻量级的UML图绘制工具NClass,UML类图编辑器免安装版【亲测有效】
下载地址:NClass下载地址 NClass是一款免费的UML图绘制工具,它很小巧轻量级,解压之后大小不到2M,便于携带和使用,是很实用UML绘制工具. 功能介绍: 1.支持完整的C#和Java支持多 ...
- eclipse使用ModelGoon插件自动生成java类的UML图
1.ModelGoon介绍 ModelGoon 是一个 Eclipse插件,能将Eclipse中现有的java类生成类图,可以进行Java 包的依赖分析,基于UML图进行模型设计,以及逆向工程(即从已 ...
- 设计模式系列文章-1.设计模式的概述及UML图
文章目录 1,设计模式概述 1.1 软件设计模式的产生背景 1.2 软件设计模式的概念 1.3 学习设计模式的必要性 1.4 设计模式分类 2,UML图 2.1 类图概述 2.2 类图的作用 2.3 ...
最新文章
- 想让关系更好就不要怕麻烦
- 图解Matlab向量和向量运算
- 【数据竞赛】Kaggle GM秘技:树模型初始化技巧
- linux sed命令整行替换:将`PermitRootLogin`行替换成`PermitRootLogin yes`
- 【slowfast 减少ava数据集】将ava数据集缩小到2个,对数据集做训练,然后进行检测,为训练自己的数据集做准备
- 关于NGINX下开启PHP-FPM 输出PHP错误日志的设置(已解决)
- CY7C68013 USB接口相机开发记录 - 第一天:资料下载
- map字符串转json格式
- unknown source怎么解决?unknown source是什么意思【详解】
- 微软ime日文输入法在假名输入模式下怎么快速输入英文
- C语言程序设计专栏索引
- 重装也无法修复此计算机,win10系统重装|Win10“重置此电脑”时出现问题解决教程...
- springboot整合liquibase(补充)
- 阿里云 centos7静默安装oracle12c,使用navicat 连接oracle数据库
- ffmpeg sws_scale详细分析
- CrashReport(崩溃日志)分析方法
- 上海大专计算机专业排名,2019上海软科世界一流学科排名计算机科学与工程专业排名乔治华盛顿大学排名第301-400...
- 菜鸟的Vue-Cli 4.x学习总结
- 软件工程与计算II-9-软件体系结构基础
- 本人有8万启动资金,做点什么生意好呢?