美文网首页
[设计模式]-UML类图的各符号含义

[设计模式]-UML类图的各符号含义

作者: 小蝎子tt | 来源:发表于2019-11-05 02:27 被阅读0次

    UML类图的各符号含义

    类图基本符号可拆分为虚线,箭头,实线,空心右三角,实心右三角,空心菱形和实心菱形。由这些基本的图形进行组合构成了类图的基本符号。这里要注意这几个符号的顺序,代表了类与类之间关系的耦合程 度。越向右耦合度越高。

      其中虚线+箭头是表示即依赖的关系,实线+箭头表示关联的关系,虚线+空心右三角表示implements,实线+空心右三角表示的是泛化,即类的继承关系。实线+空心菱形表示的是聚合的关系,实线+实心菱形则表示 组合的关系。

      另外一点是在看类图的时候要注意。类图的思想其实也还没有脱离面向对象的思想,以某个类为中心,有些线是射入的而有些线是射出的。射入的线表示的是这个类被哪些类所调用而射出的线则表示该类调用了 哪些类,包括泛化,关联,依赖,聚合和组合四种关系。这类似于离散数学中有关图部分的描述。

      1. 类(Class):使用三层矩形框表示。 第一层显示类的名称,如果是抽象类,则就用斜体显示。 第二层是字段和属性。 第三层是类的方法。 注意前面的符号,‘+’表示public,‘-’表示private,‘#’表示protected。

      2. 接口:使用两层矩形框表示,与类图的区别主要是顶端有<>显示 。 第一行是接口名称。 第二行是接口方法。

      3. 继承类(extends) :用空心三角形+实线来表示。

      4. 实现接口(implements) :用空心三角形+虚线来表示

      5. 关联(Association) :用实线箭头来表示,例如:燕子与气候

      6. 聚合(Aggregation) :用空心的菱形+实线箭头来表示 聚合:表示一种弱的‘拥有’关系,体现的是A对象可以包含B对象,但B对象不是A对象的一部分,例如: 公司和员工 组合(Composition):用实心的菱形+实线箭头来表示 组合:部分和整体的关系,并且生命周期是相同的。例如:人与手

      7. 依赖(Dependency) :用虚线箭头来表示,例如:动物与氧气

      8. 基数 :连线两端的数字表明这一端的类可以有几个实例,比如:一个鸟应该有两只翅膀。如果一个类 可能有无数个实例,则就用‘n’来表示。关联、聚合、组合是有基数的。

    类之间的关系

    UML把类之间的关系分为以下5种.

    ● 关联:类A与类B的实例之间存在特定的对应关系

    ● 依赖:类A访问类B提供的服务

    ● 聚集:类A为整体类,类B为局部类,类A的对象由类B的对象组合而成

    ● 泛化:类A继承类B

    ● 实现:类A实现了B接口

    关联(Association)

    关联指的是类之间的特定对应关系,在UML中用带实线的箭头表示。按照类之间的数量对比,关联 可以分为以下三种:

      ● 一对一关联

      ● 一对多关联

      ● 多对多关联

    注意:关联还要以分为单向关联和双向关联

    依赖(Dependency)

      依赖指的是类之间的调用关系,在UML中用带虚线的箭头表示。如果类A访问类B的属性或者方法, 或者类A负责实例化类B,那么可以说类A依赖类B。和关联关系不同,无须在类A中定义类B类型的属性。

    聚集(Aggregation)

    聚集指的是整体与部分之间的关系,在UML中用带实线的菱形箭头表示。 聚集关系还可以分为两种类型:

      ● 被聚集的子系统允许被拆卸和替换,这是普通聚集关系。

      ● 被聚集的子系统不允许被拆卸和替换,这种聚集称为强聚集关系,或者组成关系。

    注:强聚集(组成)可用带实线的实心菱形箭头表示。

    泛化(Generalization)

      泛化指的是类之间的继承关系,在UML中用带实线的三角形箭头表示。 实现(Realization) 实现指的是类与接口之间的关系,在UML中用带虚线的三角形箭头表示。

    ---------------------

    作者:夏菠

    来源:CSDN

    原文:https://blog.csdn.net/xiabodan/article/details/47682307

    版权声明:本文为博主原创文章,转载请附上博文链接!

    相关文章

      网友评论

          本文标题:[设计模式]-UML类图的各符号含义

          本文链接:https://www.haomeiwen.com/subject/hhzraqtx.html