UML 类图介绍

原文地址:UML 类图介绍 博客地址:http://www.extlight.comhtml

1、基本概念

类图是描述类、接口以及类之间关系的图。java

1.1 做用

类图经常使用来描述业务或软件系统的组成、结构和关系程序员

1.2 类描述

类在 UML 中一般以实线矩形框表示。 矩形框中有若干分隔框,分别包含类名、属性、行为等元素。以下图: web

类名:图中蓝色背景的字,若是字体为斜体,表名该类为抽象类 属性:类名下边的区域 行为:属性下边的区域 可见性:属性和行为前边的 "+"、"-" 和 "#"(图中未标注) 分别表示 public、private 和 protectedide

1.3 接口描述

接口的类图表述与类大体相同,不一样的是接口名要添加 Interface 标识,且行为的可见性必须用 "+" 表示。以下图: 字体

2、类图中的六种关系

  • 继承
  • 实现
  • 关联
  • 依赖
  • 组合
  • 聚合

2.1 继承(Inherit)

继承是面向对象语言的三个特性之一。子类继承父类,子类可使用父类全部非私有的属性和方法,其UML类图表示以下: ui

UML 类图中继承关系使用空心三角形+实线表示。spa

2.2 实现(Realization)

实现与继承相似,实现类继承接口中的方法,可是方法必须由实现类本身实现,其UML类图表示以下: 3d

UML 类图中实现关系使用空心三角形+虚线表示。code

2.3 关联(Association)

指类与类之间的关系,它使得一个类知道另外一个类的属性和方法。关联能够是双向的,也能够是单向的。

用 Java 代码表示企鹅只存在在南极,与气候有关系:

public class Penguin {
    private Climate climate;
}
复制代码

其UML类图表示以下:

UML 类图中关联关系使用实线箭头表示。

2.4 依赖(Dependency)

指类与类之间的联接,依赖关系表示一个类依赖于另外一个类的定义。通常而言,依赖关系在Java语言中体现为局域变量、方法的形参,或者对静态方法的调用。

用 Java 代码表示程序员工做须要用到电脑:

public class Programmer{
    public void work(Computer computer) {
        
    }
}
复制代码

其UML类图表示以下:

UML 类图中依赖关系使用虚线箭头表示。

2.5 组合(Composition)

关联关系的一种,表示一种强的“拥有”关系,体现了严格的部分和总体的关系,部分和总体的生命周期同样。

用 Java 表示每只鸟都有翅膀:

public class Bird {
    private Wing wing;
    public Bird() {
        wing = new Wing();
    }
}
复制代码

其UML类图表示以下:

UML 类图中组合关系使用实心菱形实线表示。

2.6 聚合(Aggregation)

关联关系的一种,表示一种弱的“拥有”关系,体现的是A对象能够包含B对象,可是B对象不是A对象的一部分。

用 Java 代码表示大雁是群居动物,每只大雁都属于一个雁群,一个雁群能够有多只大雁:

public class WildGooseAggregate {
    private List<WildGoose> wideGooses;
}
复制代码

其UML类图表示以下:

UML 类图中聚合关系使用空心菱形实线表示。

3、参考资料

相关文章
相关标签/搜索