阅读UML图最常见到的类与类之间的关系有如下几种:

1、依赖关系

  依赖关系是指一个类在计算时,应用了“另一个类”类型的参数,这种关系是偶然、临时、弱的。

  UML类图中,依赖关系用带单箭头的虚线表示,即A类---------->B类,表示A类中的某个方法,引用了B类类型的值作为参数,但是B类的变化会影响到A类

2、关联关系:包含单向关联关系、双向关联关系、自关联关系

  是类之前最常见的一种关系,是一种结构化的关系,表示两个类的对象之间存在某种联系,是一种长期的联系,比如老师-学生,司机-车等。二者的地位一般是平等的。

  (1)单向关联关系(has a 关系)

    UML类图中用单箭头表示, A类——>B类  ,A类的field中包含有B类类型的数据,

  (2)双向关联关系

    UML类图中用直线表示,A类——B类,横线上可以标明该类将向对方类发出的动作。

  (3)自关联

    UML类图中用一条指向自身的单箭头表示,A类——>B类。

3、聚合关系

  UML类图中用一条一端为空心菱形,另一端为单箭头的直线表示。

  聚合关系强调比较松散的“部分-整体”关系,部分可以独立于整体而单独存在,部分的生命周期与整体的生命周期是独立的。

4、组合关系

  在UML类图中用一端为实心菱形,一端为箭头的直线表示。

  组合关系是一种严格的“部分-整体”关系,部分和整体具有相同的生命周期,部分依赖于整体而存在,不能单独存在,组合关系也可看作一种“强聚合”关系。

5、继承关系

  UML类图中,继承关系用带空心的三角箭头的直线表示,空心三角箭头指向父类

6、接口实现关系

  UML类图中,接口的实现关系用带空心三角箭头的虚线表示,空心三角箭头指向被实现的接口

UML类图中最重要的几种类关系及其表示的更多相关文章

  1. UML类图中的六种线条与六种关系

    1.泛化(generalize) 实线空心三角箭头. 2.实现(realize) 虚线空心三角箭头. 3.聚合(aggregation) 实线空心菱形箭头. 4.组合(composition) 实线实 ...

  2. UML类图中的关系和表示方法

    类图是用来描述程序中的类以及它们之间的关系的,使用类图可以帮助我们简化对系统的理解.在UML类图中比较常见的关系有六种,它们分别是:依赖.关联.聚合.组合.泛化.实现,这六种关系中类之间的紧密程度是依 ...

  3. UML类图中箭头和线条的含义和用法

    UML类图中箭头和线条的含义和用法 在学习UML过程中,你经常会遇到UML类图关系,这里就向大家介绍一下UML箭头.线条代表的意义,相信通过本文的介绍你对UML中箭头.线条的意义有更明确的认识. AD ...

  4. UML类图中的六种关系(物理设计阶段)

    UML类图中经常会用到各种箭头和线条来表示不同类或者接口之间的关系,因此非常好的理解各个图标的含义是很有必要的. 在物理设计阶段可以通过EA工具将类图搭建好,然后直接生成物理类,这样也可以减少物理设计 ...

  5. UML类图中的关系表示

    UML类图中的关系和表示方法 类图是用来描述程序中的类以及它们之间的关系的,使用类图可以帮助我们简化对系统的理解.在UML类图中比较常见的关系有六种,它们分别是:依赖.关联.聚合.组合.泛化.实现,这 ...

  6. UML类图画法及其之间的几种关系(转)

    UML类图画法及其之间的几种关系 最近做重构项目,需要画一下类图,发现类图的画法及其之间的几种关系已经淡忘了很多,所以整理总结一下,有问题的地方大家可以一起讨论下. 文章目录如下: 类图画法 类之间的 ...

  7. UML类图中连接线与箭头的含义(转)

    UML类图是描述类之间的关系 概念 类(Class):使用三层矩形框表示. 第一层显示类的名称,如果是抽象类,则就用斜体显示. 第二层是字段和属性. 第三层是类的方法. 注意前面的符号,'+'表示pu ...

  8. 练习UML类图中的类的表示

    第一部分:UML类图(class diagram) 类图用来展现一组类.类的特性以及其类相互之间的关系,一个类图由一组类以及它们之间的关系构成,类图用来对系统的领域概念以及静态结构进行建模. 在软件模 ...

  9. UML类图中的几种关系的画法和含义

    UML的类图中,一共有以下六大关系: 泛化(Generalization), 实现(Realization), 依赖(Dependence),关联(Association),聚合(Aggregatio ...

随机推荐

  1. 2018年-2019年第二学期第三周C#学习个人总结

    在第三周,我们又开始了C#的进一步学习,学习的范围是从4.8static关键字到4.11对象初始化器.在4.8static关键字我学到了静态字段,静态属性,静态方法,静态类,静态构造方法单例模式,嵌套 ...

  2. oracle 锁表

    select b.username,b.sid,b.serial#,logon_time from v$locked_object a,v$session b where a.session_id = ...

  3. 一键git push脚本(python版)

    #!/usr/bin/env python import os import subprocess import sys import time gitconfig = { 'cwd': './blo ...

  4. java.io.IOException: Attempted read from closed stream

    前言: 代码如下,执行的时候提示"java.io.IOException: Attempted read from closed stream." public static JS ...

  5. js清除childNodes中的#text(选项卡中会用到获取第一级子元素)

    我们一般为了代码整洁代码都会换行,如上面所述. 获取div1节点下的childNodes var div = document.getElementById('div1') var child = d ...

  6. .NET常用功能

    1.判断对象判不为null或不为""或不为"undefined" public static bool isNotNullOrBlank(Object obj) ...

  7. linux 配置ftp服务

    需求:定时远程上传文件,windows->linux linux是一个云服务器,centos7 1:安装vsftpd yum install vsftpd 2:设置开机启动服务chkconfig ...

  8. Log4Net 常见格式说明(不断更新中)

    用户名  %username pc版本 另起一行 %newline

  9. 前后端token机制 识别用户登录信息

    Token,就是令牌,最大的特点就是随机性,不可预测.一般黑客或软件无法猜测出来. 那么,Token有什么作用?又是什么原理呢? Token一般用在两个地方: 1)防止表单重复提交. 2)anti c ...

  10. 『Python进阶』专题汇总

    基础知识 Python3内置函数 『Python』库安装 『流畅的Python』第1~4章_数据结构.编码 『Python』基础数据结构常见使用方法 『Python CoolBook』数据结构和算法_ ...