UML之类图

一、类图概要

        类图是面向对象系统建模中最重要的图,是定义其它图的基础。类图主要是用来展现软件系统中的类、接口以及它们之间的静态结构。 

        类图以反映类的结构(属性、操作)以及类之间的关系为主要目的,描述了软件系统的结构,是一种静态建模方法

        类图中的“类”与面向对象面向对象面向对象语言中的“类”的概念是对应的,是对现实世界中的事物的抽象

二、类图中的元素及解释

1、类

  1. ​ 从上到下分为三部分,分别是类名、属性和操作。类名是必须有的
  2. ​ 类如果有属性,则每一个属性必须有一个名字,另外还可以有其他的描述信息,如可见性、数据类型、缺省值等
  3. ​ 类如果有操作,则每一个操作也都有一个名字,其他可选的信息包括可见性、参数的名、参数类型、参数缺省值和操作的返回值的类型等

在这里插入图片描述

2、接口

​ 一组操作的集合,只有操作的声明而没有实现

3、抽象类

​ 不能被实例化的类,一般至少包含一个抽象操作

​4、模板类

​ 一种参数化的类,在编译时把模板参数绑定到不同的数据类型,从而产生不同的类

UML之类图_第1张图片

三、类图中的关系及解释

在uml类图中,类之间关系有如下:

  1. 泛化(Generalization)
  2. 实现(Realization)
  3. 关联(Association)
  4. 聚合(Aggregation)
  5. 组合(Composition)
  6. 依赖(Dependency)

1、泛化(Generalization)

        泛化是继承关系的一种,子类继承父类的所有行为和属性,子类可以新增新的功能或者重写父类功能。
        uml中使用带
空心三角箭头的实线标示
        【箭头指向】:箭头指向父类

UML之类图_第2张图片

2、实现(Realization)

        实现是接口和类的关系,是指类实现了接口中定义的接口,uml中用带空心三角箭头的虚线

        【箭头指向】:箭头指向接口类

UML之类图_第3张图片

3、关联(Association)

        在建模过程中必然存在类之间的联系,使类可以感知其他类的行为和属性,关联分为双向和单向关联.

单向关联
        对于一个单向关联来说也是两个类是相关的,但是只有一个类知道这种联系的存在

UML之类图_第4张图片

双向关联(标准)
        对于双向关联来说被关联的两个类可以感知对方的存在

UML之类图_第5张图片

 关联关系的表示方法如下:

表示

含义

0..1

0个或1个

1

只能1个

0..*

0个或多个

*

0个或多个

1..*

1个或多个

3

只能3个

0..5

0到5个

5..15

5到15个

4、聚合(Aggregation)

        聚合是关联关系的一种,聚合主要描述整体与部分直接的关系。需求陈述中常使用“包含”、“组成”、“分为…部分”等字句。除了基本(一般)聚集之外,还有共享聚集和组合聚集。

     在聚合关系中,成员对象是整体对象的一部分,但是成员对象可以脱离整体对象独立存在

     在UML中,聚合关系用带 空心菱形 的直线表示

UML之类图_第6张图片

 5、组合(Composition)

        组合聚合是聚合的一种特殊情况,成员对象与整体对象之间具有同生共死的关系,UML中使用一条从整体类到部分类的实线,并在整体类的关联末端画一个实心棱形标识 

UML之类图_第7张图片

 6、依赖(Dependency)

        依赖即一个类的实现需要其他类的协助,通常代码表现为方法参数,局部变量,静态方法调用,util类调用,uml中使用一条箭头的虚线,从依赖方指向被依赖的类

UML之类图_第8张图片

 四、域模型图示例

UML之类图_第9张图片

你可能感兴趣的:(软件工程&UML,uml,软件工程)