(转)UML类图中的6种关系

原文

继承:空心三角形箭头的实线,子类指向父类。代码中通常有extends关键字(Java)。

实现:空心三角形箭头的虚线,实现类指向接口。代码中通常有implements关键字(Java)。

关联:通常是类A中需要引用另一个类B的实例作为成员变量,表示类A需要“知道”类B。实线箭头,类A指向类B。

依赖:通常是类A中的方法需要类B的实例作为其参数或者变量,而类A本身并不需要引用类B的实例作为其成员变量。虚线箭头,类A指向类B。

聚合:通常是类A中需要包含另一个类B的实例或实例的集合,表示一种弱的“拥有”关系,即类A包含类B,但类B不是类A的一部分,而是一个独立存在的类。尾部为空心菱形的实线箭头,类A指向类B。

合成:通常需要在实例化类A的同时在其构造方法之中实例化类B,使类B作为类A的一部分,表示一个强的“拥有”关系,即类B是类A的一部分,二者共生命周期,具有严格的“整体—部分”关系。尾部为实心菱形的实现箭头,类A指向类B。

时间: 2024-11-07 05:49:02

(转)UML类图中的6种关系的相关文章

UML类图中的几种关系总结

       UML类图,描写叙述对象和类之间相互关系的方式包含:依赖(Dependency).关联(Association).聚合(Aggregation).组合(Composition).泛化(Generalization).实现(Realization)等. 依赖(Dependency) A依赖B,表示A会使用B的行为或属性,但B不能使用A的行为.属性,那么A和B的关系是依赖关系. uml中用带箭头的虚线表示Dependency关系,箭头指向被依赖元素. 演示样例代码 : class B

UML类图常见的几种关系

关系:泛化(Generalization),实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency) 1. 泛化(Generalization) 就是通常意义上的继承,是一般和特殊的关系,子类特化了父类的所有特征和行为,体现为成员变量和方法 使用符号:带空心三角箭头的实线表示,箭头指向父类 2. 实现(Realization) 定义和实现定义之间的关系,主要表现为接口和与实现类 使用符号:带空心三

UML类图中的六大关系:泛化、实现、依赖、关联、聚合、组合关系

UML定义的关系主要有:泛化.实现.依赖.关联.聚合.组合,这六种关系紧密程度依次加强,分别看一下 1.泛化 概念:泛化是一种一般与特殊.一般与具体之间关系的描述,具体描述建立在一般描述的基础之上,并对其进行了扩展.在程序中是通过继承类实现的.比如狗是对动物的具体描述,在面向对象设计的时候一般把狗设计为动物的子类. 表示方法:空心三角形箭头的实线,子类指向父类 2.实现 概念:实现是一种类与接口的关系,表示类是接口所有特征和行为的实现,在程序中一般通过类实现接口来描述 表示方法:空心三角形箭头的

UML类图中的六种关系

UML类图中经常会用到各种箭头和线条来表示不同类或者接口之间的关系,因此非常好的理解各个图标的含义是很有必要的. 在逻辑设计阶段可以通过EA工具将类图搭建好,然后直接生成物理类,这样也可以减少物理设计的工作量. 下面介绍UML中六种关系: 1. 泛化(Generalization) 概念:泛化是一种一般与特殊.一般与具体之间关系的描述,具体描述建立在一般描述的基础之上,并对其进行了扩展.在java中用来表示继承的关系. 表示:用实线空心三角箭头表示. 2. 实现(Realization) 概念:

【转载】UML类图中箭头和线条的含义和用法

文章转载自 http://blog.csdn.net/hewei0241/article/details/7674450 https://blog.csdn.net/iamherego/article/details/44802855 1.UML中关系 本节向大家学习一下UML箭头.线条代表的意义,UML中关系主要有依赖,聚合,合成,泛化和实现等,下面就让我们来看一下这些关系如何用UML箭头和线条来实现. 关系 后面的例子将针对某个具体目的来独立地展示各种关系.虽然语法无误,但这些例子可进一步精

UML类图中的六种关系及实例【补充】

·继承和接口都比较常见,通过继承子类可以直接使用父类的(public,protected属性以及方法:而实现了Speakable接口的Person类必须定义其所有方法,包括speak()): ·依赖指的是某个类进行初始化或者实现特别的方法时,必须依赖其他特定对象:如上面例子中人必须依赖water和oxygen; ·组合跟聚合很容易搞混.但是好好理解一下还是不难区分的:上面例子中意思是教师(人)由手.脚组成(当然你还可以加上五官),而聚合指的是一个“大类”中包含多个一样的“小类”,比如一个班级有多

UML类图中的六种线条与六种关系

1.泛化(generalize) 实线空心三角箭头. 2.实现(realize) 虚线空心三角箭头. 3.聚合(aggregation) 实线空心菱形箭头. 4.组合(composition) 实线实心菱形箭头. 5.关联(association) 实线(直线),普通箭头("<",">")可选.如果强调方向,则加一个普通箭头.否则只需要一条实线. 6.依赖(dependency) 虚线普通箭头("<",">&qu

UML类图五种关系与代码的对应关系

转: UML类图中的五种关系的耦合强弱比较:依赖<关联<聚合<组合<继承 一.依赖关系: (一)说明 虚线+箭头 可描述为:Uses a 依赖是类的五种关系中耦合最小的一种关系. 因为在生成代码的时候,这两个关系类都不会增加属性. (二)依赖关系图与代码的对应关系 (PS:依赖关系:Animal依赖于Water(动物依赖于水)) [csharp] view plaincopyprint? Public class Animal() { Public Animal(){} } Pub

UML类图的五种关系小结

UML类图中的五种关系的耦合强弱比较:依赖<关联<聚合<组合<继承 一.依赖关系: (一)说明 虚线+箭头 可描述为:Uses a 依赖是类的五种关系中耦合最小的一种关系,是一种协助关系. 因为在生成代码的时候,这两个关系类都不会增加属性. (二)依赖关系图与代码的对应关系 动物类与水类的关系就是依赖关系,两者的存在关系有以下几种: 1 Water是Animal的全局变量,animal可以随处调用对象 2 Water是Animal的某个方法的局部变量 void Animal::Dr