一、 描述类
(一) 第一层:类名,不能省略。斜体表示为抽象类
(二) 第二层:属性。+,-,# 分别表示 public 、 private 、 protected 。
(三) 第三层:方法。下划线表示静态方法或属性。
(四) 第四层:性质。Get/set 方法。
二、 描述接口
三、 类图中的关系
(一) 一般化关系:
1. 继承: inherits from XXX
2. 实现: implements interface
(二) 关联关系:java 中的实现通常是使用实例变量 is associated with
关联端点:
(三) 聚合关系:是关联关系的一种,强的关联关系。通常是整体与个体之间的关系。其与关联关系的区别是: 关联关系通常是同一层次的关系,而聚合是不平等层次上的关系,一个代表整体,一个代表个体。 is aggregate of
(四) 合成关系:关联关系的一种,比聚合关系强的关系。要求普通的聚合关系中代表整体的对象负责个体对象的生命周期,且合成关系是不能共享的。
图中展示了美猴王与四肢及金箍棒之间的关系。美猴王与金箍棒是聚合关系,与四肢是合成关系。
(五) 依赖关系:表示一个类依赖另一个类的关系。与关联关系不同的是,另外一个类不是做为实例属性,而是方法参数进行传递。java 语言中主要体现为局部变量、方法参数、静态方法的调用。
附:violet 轻量级uml工具