先上一张图:
概述
类图(Class Diagram)是面向对象系统建模中最常用和最重要的图,是定义其它图的基础。类图主要是用来显示系统中的类、接口以及它们之间的静态结构和关系的一种静态模型。
类图组成
类图(Class Diagram)是一个分为三个部分的矩形:上面的部分显示类的名称,居中显示,类名是斜体
表示的是抽象类
;中间部分显示类的特性(字段和属性);下面的部分显示类的操作(方法或行为)。
注意前面特性和操作部分的符号含义:
+
表示属性或方法是公用的(public)-
表示属性或方法是私有的(private)#
表示属性或方法是保护的(protected)
接口
接口(Interface)与类图基本一致,主要区别在于接口顶端有<<interface>>
表示。
类图中关系图示说明
注:下面的是以上面的图为例说明。
- 继承(Generalization)/泛化(Generalization):空心三角形+实线
实线从子类指向父类,空心三角形与父类连接。(动物和鸟的继承关系) - 实现(Realization):空心三角形+虚线
虚线从实现类指向接口,空心三角形与接口连接,在类图中就是接口和实现的关系。(实现大雁飞翔的接口) - 依赖(Dependency):虚线箭头
虚线箭头由依赖者指向被依赖的类,可以有多个以来。(动物依赖氧气和水) - 关联(Association):实线箭头
实线箭头由使用类指向被关联的类,可以是单向和双向。(企鹅需要知道气候才迁移) - 聚合(Aggregation):空心菱形+实线箭头
空心菱形与整体连接,实线箭头由实心菱形指向部分。(雁群和大雁的关系) - 合成/组合(Composition):实心菱形+实线箭头
实心菱形与整体连接,实线箭头由实心菱形指向部分。(图中鸟和翅膀的关系) - 接口:空心圆+直线
空心圆旁为实现接口的名称,直线连接接口实现与空心圆。(图中唐老鸭类实现了讲人话)