UML中类或接口与类之间的关系类型有以下几种:关联关系、依赖关系、泛化、实现。
关联关系
用于表示一类对象与另一类对象之间有联系,比如一个类对象作为另一个类的成员变量,用实线+箭头表示
关联关系通常又包含单向关联、双向关联、自关联、多重性关联、聚合关系和组合关系
多重性关联m…n解释:
另一个类的一个对象与该类最少m, 最多n个对象有关系(m<=n)
以上图为例,1:1表示一个Button对象只能属于一个Window, 0…*表示一个Window对象可以有0个或多个Button对象
聚合关系表示整体和部分的关系,部分可以脱离整体独立存在,用空心菱形+实线+箭头表示**(HAS-A)**
组合关系也表示整体和部分的关系,但是部分不能脱离整体存在,用实心菱形+实线+箭头表示
依赖关系(USE-A)
一种使用关系, 体现再一个类的方法中使用另一个类的对象作为参数, 用虚线+箭头表示
泛化(继承)关系(IS-A)
父类(基类或超类)和子类(派生类)的关系,用直线+空心三角形表示
接口与实现关系
接口之间可以有与类之间关系类似的继承和依赖关系,还存在接口和类的实现关系,用虚线+空心三角形表示