设计模式-UML图简单介绍
直接上法宝:
1.类(Class)
类图分三层:
第一层显示类的名称,如果是抽象类,则就用斜体显示。
第二层是类的特性,通常就是字段和属性。
第三层是类的操作,通常是方法或行为。
2.接口(interface)
矩形表示法,顶端有<<interface>> 第一行:接口名称。第二行:接口方法。
3.继承
4.接口实现:
接口实现用空三角+虚线表示
5.关联 实线+箭头
6.聚合(Aggregation)
聚合表示一种弱的’拥有’关系,体现的是A对象可以包含B对象,但B对象不是A对象的一部分。
7.合成(组合)Composition.
是一种强的’拥有’关系,体现了严格的部分和整体的关系,部分和整体生命周期一样。
8.依赖
最后发现总看设计模式的UML图有个地方容易混淆。就是 依赖、关联、聚合、组合。
然后就这么记的:
关联: 实线+> : 鸟和天气
依赖: 虚线+> : 鸟和氧气
聚合: 空菱形+实线+> : 鸟和鸟群
组合: 实菱形+实线+> : 鸟和翅膀
设计模式-UML图简单介绍的更多相关文章
- UML动态模型图简单介绍
UML动态模型图描述了系统动态行为的各个方面,包括用例图.序列图.协作图.活动图和状态图.下面就每种图做一个简单介绍: 用例图 用例图描述系统外部的执行者与系统提供的用例之间的某种联系.所谓用例是指对 ...
- [zt]Singleton和Double-Checked Locking设计模式—UML图及代码实现
Singleton和Double-Checked Locking设计模式,分别指的是单例模式和双重检查锁模式,它们都可以用于确保某个类只有一个对象实例化. 两个模式的区别在于:Singleton模式用 ...
- 设计模式UML图
1.简单工厂模式 2.工厂模式 工厂模式与简单工厂模式的不同在于,每个操作类都有自己的工厂,而且把逻辑判断交给了客户端,而简单工厂的逻辑判断在工厂类里边,当增加新的操作类时,简单工厂需要修改工厂类,而 ...
- Java EE设计模式(主要简单介绍工厂模式,适配器模式和模板方法模式)
Java EE设计模式分为三种类型,共23种: 创建型模式:单例模式.抽象工厂模式.建造者模式.工厂模式.原型模式. 结构型模式:适配器模式.桥接模式.装饰模式.组合模式.外观模式.享元模式.代理模式 ...
- UML类图简单介绍
先上一张图: 概述 类图(Class Diagram)是面向对象系统建模中最常用和最重要的图,是定义其它图的基础.类图主要是用来显示系统中的类.接口以及它们之间的静态结构和关系的一种静态模型. 类图组 ...
- 【转】23种设计模式UML图
原文:http://blog.csdn.net/bwwlpnn/article/details/7421628
- 三类设计模式UML图
http://design-patterns.readthedocs.org/zh_CN/latest/index.html
- 23种设计模式UML图
- Python设计模式 - UML - 通信图(Communication Diagram)
简介 通信图表示对象之间的消息往来,是表述时序图中信息交互的另一种UML图,介绍完时序图就要对照学习一下通信图,二者是一体两面的. 通信图和时序图可以相互转换,二者的侧重点不同,通信图侧重哪些对象发送 ...
随机推荐
- mysql内一些可以报错注入的查询语句
一.exp() 取反参数 该函数简单来说就是,以e为底的对数,在当传递一个大于709的值时,函数exp()就会引起一个溢出错误,取反则可以导致很小的数值变得很大,比如说0 这样既可配合使用,e ...
- Spring Boot 轻量替代框架 Solon 的架构笔记
Solon 是一个微型的Java开发框架.项目从2018年启动以来,参考过大量前人作品:历时两年,4000多次的commit:内核保持0.1m的身材,超高的跑分,良好的使用体验.支持:RPC.REST ...
- Flask面试问题
1,什么是Flask,有什么优点?概念解释Flask是一个Web框架,就是提供一个工具,库和技术来允许你构建一个Web应用程序.这个Web应用程序可以是一些Web页面,博客,wiki,基于Web的日里 ...
- 基金 A 类和 C 类、ETF、LOF、QDII 到底是啥?
ETF 对于初入股市的新手来说,买了一只公司股票容易,想买一个行业的股票就不是很容易了. 比如你要懂得行业里都有谁,每个公司分配多少钱,最主要股票交易最少要交易 1 手也就是 100 股,要是想配置一 ...
- Java并发编程之同步/并发集合
同步集合 Java中同步集合如下: Vector:基于数组的线程安全集合,扩容默认增加1倍(ArrayList50%) Stack:继承于Vector,基于动态数组实现的一个线程安全的栈 Hashta ...
- PTA 统计二叉树度为1的结点个数
6-3 统计二叉树度为1的结点个数 (10 分) 本题要求实现一个函数,可统计二叉树中度为1的结点个数. 函数接口定义: int NodeCount ( BiTree T); T是二叉树树根指针, ...
- PTA 统计二叉树结点个数
6-1 统计二叉树结点个数 (10 分) 本题要求实现一个函数,可统计二叉树的结点个数. 函数接口定义: int NodeCount ( BiTree T); T是二叉树树根指针,函数NodeCo ...
- C语言变量及其生命周期
变量类型以及作用域和生命周期 变量的作用域 变量的作用域就该变量可以被访问的区间,变量的作用域可以分为以下四种: 进程作用域(全局):在当前进程的任何一个位置都可以访问 函数作用域:当流程转移到函数后 ...
- 使用命令行编译Qt程序
code[class*="language-"], pre[class*="language-"] { color: rgba(51, 51, 51, 1); ...
- Android Studio 待看博文
•前言 学习过程中找到的一些好的博文,有些可能当时就看完了并解决了我的问题,有些可能需要好几天的事件才能消化. 特此记录,方便查阅. •CSDN 给新人的一些基础常识 TextView的文字长度测量及 ...