UML中的6大关系相关英文及音标:html
依赖关系 数组 |
dependency -------->函数 |
关联关系url |
association ______>spa |
聚合关系指针 |
aggregation ______◇htm |
组合关系对象 |
Composition______◆blog |
实现继承 |
realization ------△ |
泛化 |
generalization △---------- |
UML中的6大关系简单解释:
注意:泛化关系和实现关系又统称为通常关系;
总之:通常关系表现为继承或实现(is a),关联关系、聚合关系、合成/组合关系表现为成员变量(has a),依赖关系表现为函数中的参数(use a);
UML中的6大关系详细说明:
1、关联关系:
含义:类与类之间的连结,关联关系使一个类知道另一个类的属性和方法;一般含有“知道”,“了解”的含义
体现:在C#中,关联关系是经过成员变量来实现的;
方向:双向或单向;
图示:实线 + 箭头;箭头指向被关联的类;
2、依赖关系:
含义:是类与类之间的链接,表示一个类依赖于另一个类的定义;依赖关系仅仅描述了类与类之间的一种使用与被使用的关系;
体现:在C#中体现为局部变量、方法/函数的参数或者是对静态方法的调用;
方向:单向;
图示:虚线 + 箭头;
举例:人依赖于水和空气;汽车依赖汽油
3、聚合关系:
含义:是关联关系的一种,是一种强关联关系;聚合关系是总体和个体/部分之间的关系;关联关系的两个类处于同一个层次上,而聚合关系的两个类处于不一样的层次上,一个是总体,一个是个体/部分;在聚合关系中,表明个体/部分的对象有可能会被多个表明总体的对象所共享;
体现:C++中,聚合关系经过将被聚合者的(数组)指针做为内部成员来实现的;
方向:单向;
图示:空心菱形 + 实线 + 箭头;箭头指向被聚合的类,也就是说,箭头指向个体/部分;
举例:鸭群与鸭子具备聚合关系;汽车由引擎、轮胎以及其它零件组成,由于汽车坏掉了,没有坏掉的引擎,轮胎和其余零件还能够继续使用。
4、组合关系:
含义:它也是关联关系的一种,但它是比聚合关系更强的关系.组合关系要求聚合关系中表明总体的对象要负责表明个体/部分的对象的整个生命周期;组合关系不能共享;在组合关系中,若是表明总体的对象被销毁或破坏,那么表明个体/部分的对象也必定会被销毁或破坏,而聚在合关系中,表明个体/部分的对象则有可能被多个表明总体的对象所共享,而不必定会随着某个表明总体的对象被销毁或破坏而被销毁或破坏;
体现:在C#中,组合关系是经过成员变量来实现的;
方向:单向;
图示:实心菱形 + 实线 + 箭头;箭头指向表明个体/部分的对象,也就是被组合的类的对象;
举例:一我的由头、四肢、等各类器官组成,由于人与这些器官具备相同的生命周期,人死了,这些器官也挂了;
5、泛化关系:
含义:它表示一个更泛化的元素和一个更具体的元素之间的关系;也就是一般所说的类的继承关系;
体现:在C#中,泛化关系经过类的继承来实现的;
方向:单向;子类继承父类;
图示:空心箭头 + 实线;箭头指向父类;
举例:动物下面能够分为哺乳动物,脊椎动物,爬行动物等
六、实现关系: 含义:它指定了两个实体之间的一份合同;即:一个实体定义一份合同,另一个实体则保证履行该合同; 体现:在C#中,实现关系经过类实现接口来实现的,即:一个类实现某个接口; 方向:单向;子类实现接口; 图示:空心箭头 + 虚线;箭头指接口向接口; 举例:唐老鸭(对象)会说话(接口),由于通常鸭子不会说话,因此不会将说话这个方法给通常的鸭子带上;超人(对象)会飞(接口)