<UML基础、案例与应用> - 类图和对象图

类图标

UML 包里的类图标
(1)包名::类名 ——路径名
(2)标红 ——附加信息
(3)... ——省略符
(4)花括号 ——约束

UML的类图标是由一个矩形表示。

  • 类名字、属性、操作和职责都在区域中有各自的方框
  • 可以使用构造型组织属性和操作名列表
  • 可以使用类的省略表示法,只表现出类的一部分属性和操作,使得类图比较清晰。
  • 可以在类图标中指定属性的类型和初始值
  • 可以指明操作执行时所需要的参数和参数类型(这些附加信息被称为型构
  • 可以对类施加约束,以减少描述类时的二义性
  • 允许对模型元素附加注释来说明相关更多的附加信息

类之间的关系

关系说明了类模型所表达的概念之间的连接,这样才能完整地说明我们所建模的对象。

关联

类之间最基础的概念性连接。

  • 关联用一条直线表示,其两端可以注明角色名和多重性,和类一样,关联也有自己的属性和操作(关联类)。用虚线将关联类和对应的关联线连接起来。
关联
实心箭头——关联方向
花括号——关联上的约束

关联也有自己的实例,叫做——链

链链接的是对象,而不是类。和对象名一样,要加下划线
  • 多重性

表示多重性的方法是在参与关联的类附近的关联线上(或下)注明多重性数值。

多重性
* ——多个
.. ——或
, ——或
  • 限定关联
属性值信息叫做限定符,使用时表示限定了一种关联
  • 自身关联

一个类可能与自身发生关联。当一个类的对象可以充当多种角色时,自身关联就可能发生。

自身关联的关联线从某个类出发又回到自身。自身关联也可以指明角色名、关联名、关联方向和多重性。

继承

寻找不同类的共同属性和操作可以发现类之间的继承关系。在父类中已经指明的属性和操作,在子类中可以不用再指明。

  • 继承的表示法是从子类画一条带空心三角形箭头的连线指向父类。
单继承
基类(根类):没有父类
叶类:没有子类
单继承:只有一个父类
多继承:有多个父类
“基类是”斜体 ——表示抽象类类名

抽象类只是为了提供其他类继承的基类之用,本身不产生对象示例。用斜体书写。

依赖

一个类使用了另一个类。
最通常的用法:用来说明某个类操作的型构使用了另一个类的定义。

  • 用从依赖类到被依赖类的带箭头的虚线表示
依赖

聚集

一个类有时是由几个部分类组成的,这种特殊类型的关系被称为聚集

可以在聚集上施加一个“or”约束,它表示某个整体包含一个或另一个部分。整体和部分用带空心菱形箭头的连线连接
  • 组成

强类型的聚集。其中的每部分体只能属于一个整体。

在组成关系中,每个部分只能属于一个整体。除菱形箭头是实心之外,组成和聚集的表示法相同

实现

一个类和它的接口之间的关系。

  • 接口

描述类的部分行为的一组操作。

和类大致相同,用一个矩形图标来代表,但接口只是一组操作,没有属性。当类省略了属性后,可以使用构造型接口 区分开。

接口是一个类的操作集合,类和接口之间可以通过实现关系连接,实现关系用带空心三角形的虚线表示,箭头指向接口一端
被类实现的接口的省略表示法

一个类可以实现多个接口,一个接口也可以被多个类实现。

我们通过接口实现对的操作,通过接口的交互建模为一种依赖

使用依赖符号对通过接口和类的交互来建模(下图:引用了“球窝”符号表示省略的接口符号)

接口和端口

接口和端口

可见性

接口实现密切相关,可应用于属性或操作,它说明在给定类的属性和操作(或者接口的操作)的情况下,其他类可以访问到的属性和操作的范围。有3种层次(级别)——

  • 公有
    其他类可直接访问这个层次中的属性和操作。
  • 受保护
    只有继承了这些属性和操作的子类可以访问最初类的属性和操作。
  • 私有
    只有最初的类才能访问这些属性和操作。

实现关系意味着接口中的所有操作都是公有的。

3种层次分别用不同符号表示,并放在属性或操作名前:

“+”——公有
“#”——受保护
“-”——私有

作用域

属性操作相关的概念。

存在两种——

  • 实例作用域
    一个类的每个对象的都有各自的属性值或操作。

  • 分类符作用域
    一个类的所有实例对象共享一个属性值和操作。具有分类作用域的属性和操作名字要带下划线。属于这组对象的其他对象不能访问分类符作用域值(私有)。

类图和对象图

类图给出了一般性的、定义性的信息:一个类的特性以及它的属性,以及和这个类关联的其他的类。

对象图则在某个 特定时刻 及时给出了一个类的多个具体实例 以及它们如何联系起来等相关信息。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 12,368评论 6 13
  • 在UML 2.0的13种图形中,类图是使用频率最高的UML图之一。Martin Fowler在其著作《UML Di...
    雷雷_zll阅读 13,508评论 0 14
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 34,652评论 18 399
  • 一、概览 体验产品:在行iPhone版本 软件版本:V 2.11 设备型号:iPhone6s 操作系统:ios 9...
    Sansa阅读 1,748评论 1 9
  • 关于速读,一目十行,本书也有涉及。用笔一行行的比对是一种好习惯。按照螺旋方式,跳跃视野,用思想补足缺少的那部分文字...
    晓蕊阅读 292评论 0 0

友情链接更多精彩内容