UML之类图
来源:互联网 发布:mac硬盘清理工具 编辑:程序博客网 时间:2024/06/06 02:03
最近在看一些开源项目的源码分析,其中涉及到UML建模方面的知识,在网上查找了一些好的基础资料,现写成博文做一些基础积累。(部分属于转载,本着学习的态度,原作者勿怪)
在UML类图中,常见的有以下几种关系:泛化(Generalization), 实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency)
1、 泛化(Generalization)
关系:代表一种继承关系,体现为一般和特殊的关系,子类继承父类的所有共有属性和方法。
箭头指向:带待三角箭头的实线,箭头指向父类。
2、 实现(Realization)
关系:指接口和类的关系,表示类实现接口的所有特性与行为。
箭头:带三角箭头的虚线,箭头指向接口
3、 关联(Association)
关系:指一种拥有的关系,一个类知道另一个类的属性和方法。可以是双向,也可以是单向。双向的关联可以有两个箭头或者没有箭头,单向的关联有一个箭头。其中关联的双方也可以是自己本身,例如单例模式中设置的自身对象
代码体现:成员变量
箭头:带普通箭头的实心线,指向被拥有者
4、 聚合(Aggregation)
关系:整体与部分的关系,且部分可以离开整体而单独存在。
聚合是关联的一种,是强的关联关系;区别在于具体的逻辑关系
代码体现:成员变量
箭头:带空心菱形的实心线,菱形指向整体
5、 组合(Composition)
关系:也是整体与部分的关系,单部分不能离开整体而单独存在。
组合也是关联的一种,是比聚合关系还强的关系,要求整体的对象负责部分对象的生命周期。
代码体现:成员变量
箭头:带实心菱形的实线,菱形指向整体。
6、 依赖(Dependency)
关系:是一种使用的关系,即一个类的实现需要另一个类的协助。
代码体现:局部变量、方法的参数或对静态方法的调用
箭头:带箭头的虚线,指向被使用者
注:各种关系的强弱顺序:
泛化=实现>组合>聚合>关联>依赖
现给出一张UML的类图举例图
- 【UML】UML之类图
- uml图之类图
- UML图之类图
- UML之类图
- UML学习之类图
- UML学习之类图
- UML之类图
- UML之类图
- UML之类图
- UML之类图关系
- UML之类图
- UML之类图
- UML之类图
- UML之类图
- UML之类图
- UML之类图
- UML之类图
- UML之类图
- Git 2.0 changes push default to 'simple'
- 写给阿晨的第四封信
- STM32学习笔记之:stm32通用定时器
- if语句的汇编表示
- eclipse强大的代码提示插件——aptana
- UML之类图
- 5样家居用品别舍不得扔
- 15分钟学会使用Git和远程代码库
- linux 之shell编程
- boost::regex处理中文方法
- 短信分享
- C陷阱与指针--读书笔记
- 设计模式之三工厂
- [ACM] hdu 1465 不容易系列之一(错排复习)