UML类图的几个名词及对应符号
实现(Implements)
- 实现的符号为:\(--- \triangleright\)
箭头指向接口。
泛化/继承(Inheritance)
- 继承的符号为:$ —\triangleright $
箭头指向被继承的一方。
依赖(Dependency)
- 依赖的符号为:\(--->\)
箭头指向被依赖的一方。
对于A依赖于B:
- 类B以参数的形式传入类A的方法,并在这个方法中调用B的方法。
- 类B以局部变量的形式存在于类A的方法中(聚合是全局变量)。
- 类A调用类B的静态方法。
关联(Association)
- A类和B类通过C类关联。A类与B类用实线连接,C类通过虚线连接到实线上。
- 关联的对象地位通常是平等的。
聚合(Aggregation)
- 聚合是关联的一种特殊类型。
- 聚合用于描述“总体到局部”的关系。地位是不同的,一个是总体,一个是局部。
在类里面,局部是总体的全局变量(依赖是局部变量)。
注意与依赖区分。聚合也要将类B以参数的形式传入A的方法,但不是在传入的时候使用B,而是传给全局变量。
聚合分为基本聚合(Basic aggregation)和组合聚合(Composition aggregation)。
箭头指向“局部”。
基本聚合
符号为:\(\lozenge - >\)
空心菱形。从外部传入。组合聚合
符号为:\(\blacklozenge - >\)
实心菱形。内部自己new。
参考链接:
The class diagram
UML类图关系大全
UML类图的几个名词及对应符号的更多相关文章
- 转:深入浅出UML类图(具体到代码层次)
深入浅出UML类图 作者:刘伟 ,发布于:2012-11-23,来源:CSDN 在UML 2.0的13种图形中,类图是使用频率最高的UML图之一.Martin Fowler在其著作<UML ...
- 深入浅出UML类图(一)
在UML 2.0的13种图形中,类图是使用频率最高的UML图之一.Martin Fowler在其著作<UML Distilled: A Brief Guide to the Standard O ...
- 深入浅出UML类图
原作者:http://www.uml.org.cn/oobject/201211231.asp 在UML 2.0的13种图形中,类图是使用频率最高的UML图之一.Martin Fowler在其著作&l ...
- UML类图二
在软件系统中,类并不是孤立存在的,类与类之间存在各种关系,对于不同类型的关系,UML提供了不同的表示方式. 1. 关联关系 关联(Association)关系是类与类之间最常用的一种关系, ...
- UML类图一
转自:http://blog.csdn.net/lovelion/article/details/7838679 类图用于描述系统中所包含的类以及它们之间的相互关系,帮助人们简化对系统的理解,它是系统 ...
- 深入了解UML类图
深入浅出UML类图 在UML 2.0的13种图形中,类图是使用频率最高的UML图之一.Martin Fowler在其著作<UML Distilled: A Brief Guide to the ...
- UML类图及类与类之间的关系
原文地址:http://www.uml.org.cn/oobject/201211231.asp 类图用于描述系统中所包含的类以及它们之间的相互关系,帮助人们简化对系统的理解,它是系统分析和设计阶段的 ...
- 【转】深入浅出UML类图
转自:http://www.cppblog.com/API/archive/2013/07/04/201506.html 在UML 2.0的13种图形中,类图是使用频率最高的UML图之一.Martin ...
- UML类图概述、设计模式
深入浅出UML类图(http://blog.csdn.net/lovelion/article/details/7843308) 类(Class)封装了数据和行为,是面向对象的重要组成部分,它是具有相 ...
随机推荐
- Android开源动画库nineoldandroids
项目官网地址:http://nineoldandroids.com/ 使用这个库的原因是android3.0之后出了新的animation API,但是android3.0以下的不支持 这个库完成了这 ...
- HDU 3579
标准同余方程组,只是在求出值后如果为0,应该输出Mi的Lcm: #include<iostream> #include<cstdio> #include<cstring& ...
- fastjson序列化排序问题
fastjson序列化,默认是用字母排序, 那么怎么来实现按照自己定义的顺序输出,想要的json串呢? 直接上代码: import com.alibaba.fastjson.annotation.JS ...
- C#面向对象(继承的重载和构造函数)
构造函数: 继承的重载:
- python之比较is与==(转载)
在 Python 中会用到对象之间比较,可以用 ==,也可以用 is .但是它们的区别是什么呢? is 比较的是两个实例对象是不是完全相同,它们是不是同一个对象,占用的内存地址是否相同.莱布尼茨说过: ...
- 温故而知新--JavaScript书摘(三)
前言 毕业到入职腾讯已经差不多一年的时光了,接触了很多项目,也积累了很多实践经验,在处理问题的方式方法上有很大的提升.随着时间的增加,愈加发现基础知识的重要性,很多开发过程中遇到的问题都是由最基础的知 ...
- C++ code:数值计算之辛普生(Simpson)法求解积分问题
- poj2019 二维RMQ模板题
和hdu2888基本上一样的,也是求一个矩阵内的极值 #include<iostream> #include<cstring> #include<cstdio> # ...
- 2018-2019 2 20165203 《网络对抗技术》Exp6 信息搜集与漏洞扫描
2018-2019 2 20165203 <网络对抗技术>Exp6 信息搜集与漏洞扫描 实践目标 掌握信息搜集的最基础技能与常用工具的使用方法. 实践内容 (1)各种搜索技巧的应用 (2) ...
- 【APUE | 10】函数signal
函数signal 函数signal介绍 typedef void (*sighandler_t)(int); sighandler_t signal(int signum, sighandler_t ...