一、类和类之间的关系
UML类图中,常见以下几种关系:
1、泛化(Generalization)
是一种继承关系,比如动物类和老虎类,老虎继承动物,子类如何特化父类的所有特征和行为
箭头指向:带三角箭头的实线,箭头指向父类
我们使用类图如下
代码表示如下
Class Animal {} Class Tiger extends Animal {}
2、实现(Realization)
类与接口的关系,类是接口所有特征和行为的实现
箭头指向:带三角箭头的虚线,箭头指向接口
我们使用类图如下
代码表示如下
1. interface A {} 2. class B implement A {}
3、关联(Association)
是一种拥有(has)的关系,一个类的成员变量是另一个类的实例对象,可以双向的也可以是单向
箭头指向:带普通箭头的实心线,指向被拥有者
类图如下,表示A类关联B类
代码表示如下
1. class B {} 2. class A { 3. private B b; 4. }
4、依赖(Dependency)
是一种使用(use)的关系,即一个类的实现需要另一个类的协助,一般不使用双向的互相依赖.
箭头及指向:带箭头的虚线,指向被使用者
类图如下,这里表示A依赖于B
但是这里需要注意,依赖一般可以通过形式参数、局部变量、静态方法的调用、返回值来表示
- 形式参数代码如下
1. class B {} 2. class A { 3. public A() {} 4. public void method(B b) {} 5. }