您的位置:首页 > 其它

UML类图介绍

2014-04-22 21:51 225 查看
通过画类图,能轻易的帮我们理清类之间的关系,尤其是当工程结构比较复杂且多人协同的时候,简单易懂的类图,能更加明了的让人理解你的设计结构。

         类的关系有:泛化,实现,依赖和关联。关联又可以细分为 聚合组合关系和一般关系。

        1.泛化(generalization):

泛化是UML中的标准术语,表示类与类,类与接口和接口与接口之间的继承或者实现关系。而oop开发语言中,也称之为继承。虽然说法不同,其实质都是一样的。它表示了子类对父类的特征和行为的特化。

        表示方法:带三角箭头的实线表示,箭头指向父类。



麻雀是鸟的一种,具有鸟的一切特性。

        2.实现(realization):

实现表示接口和实体类的关系,是对接口的实例化。跟泛化具有一定的相似。

        表示方法:带三角箭头的虚线表示,箭头指向接口。



麻雀实现了飞的接口,具有飞翔的特性。

           3.依赖(dependency):

依赖是一种使用关系,表示一个类的所有功能的实现需要另外一个类的协助。注意要避免双向依赖。

可以用人和照相机的例子来说明这种关系,一般人的行为是跟照相机没啥关系的,但是当你要照相的时候,就必须的需要照相机了(其他照相设备也行,至少你不可能自己走两步就照相了吧),所以你要依赖照相机,但在走路等其他时候也跟照相机没啥关系,只有在照相才依赖下。

依赖是对象之间最弱关联,类之间的关系不是太明显,不是必然的关系是一种临时性的关联。

        表现方式:一般由局部变量,方法参数和返回值建立的对其他对象的调用关系。

        表示方法:带箭头的虚线,箭头指向被依赖的类。



           4.关联(association):

关联是类之间的引用关系,使得一个类知道另外一个类的属性和方法。关联可以是双向也可以是单项的,双向关联可以有两个箭头或没有箭头,单向关联只有一个箭头(也可自身关联)。在概念上,两个类处于同一个级别。

          表现方式:一般使用类的属性表达关系。

          表示方法:带箭头的实线,指向被关联的类。

         双向关联(丈夫和妻子之间):



       单向关联(知子莫若父,但儿子不一定就非常了解父亲了):



      单向关联中还有种特别的使用方式就是自身关联。

     自身关联(反身关联):



           而聚合组合关系都属于关联的关系。下面介绍这两种关系。

           4.1 聚合(aggregation):

聚合关系是整体和部分的关系(也称之为 has-a 的关系),且部分可以离开整体而单独存在。可以用鱼群的例子来说明,鱼儿可以作为个体存在。

         表示方法:带空心菱形的实线,菱形指向整体。



           4.2 组合(composition):

组合也是整体和部分的关系(也称之为 contains-a 的关系),但跟聚合不同的是部分不能离开整体而单独存在,比如公司和部门的关系,部门不可离开公司而单独存在。

           表示方法:带实心菱形的实线,菱形指向整体。



关系的强弱顺序:

泛化=实现>组合>聚合>关联>依赖。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  uml 设计 类图