UML类图是面向对象系统建模中最经常使用和最重要的图,是定义其它图的基础。类图主要是用来显示系统中的类、接口以及它们之间的静态结构和关系的一种静态模型。数据结构
类、接口、关系,只简单介绍一下这三种元素。spa
类是对具备相同属性和行为的对象,抽象出来的一种数据结构,是面向对象设计的核心结构。图示以下:设计
类名、属性、行为三部分组成。对象
描述行为的集合。图示以下:继承
接口名和操做两部分组成。接口
注:<<接口名>>中的尖括号不必定非要有。如实现关系就一种,接口的泛化关系只是标识行为没有属性。生命周期
类图中的元素存在六种基本关系。分别是:实现,泛化,组合,聚合,关联和依赖。ci
表示类对接口的实现操做,类具备接口的全部行为。用带有空心三角箭头的虚线表示,箭头指向接口。 实线图示以下:rem
类或接口之间的继承,表示通用与具体的差别。用带有空心三角箭头的实线表示,箭头指向父类。图示以下:字符串
总体与部分的关系,部分不能离开总体而单独存在。总体和部分生命周期同样,同生同死。用带有实心菱形的实线表示,菱形指向总体。图示以下:
总体与部分的关系,部分能够离开总体而单独存在。总体对部分只是有使用权。总体和部分的生命周期是独立存在的。用带空心菱形的实心线表示,菱形指向总体。图示以下:
同级类之间的引用,彼此不存在包含关系,引用者知道被引用者的属性和行为。关联能够是双向的,也能够是单向的。在Java语言中,关联关系通常使用成员变量来实现。
用带普通箭头的实心线表示,箭头指向被引用者。图示以下:
一个类的实现依赖另外一个类的数据。
带箭头的虚线,指向被使用者。图示以下:
关系的强到弱顺序:泛化 = 实现 > 组合 > 聚合 > 关联 > 依赖。