UML图——类图

来源:互联网 发布:克苏鲁神话知乎 编辑:程序博客网 时间:2024/06/06 01:41

概念介绍

   面向对象设计的基础就是使用类。类是用来代表现实事物或者功能的构造块。类图是由若干类关联在一起,反映系统或者子系统组成机构的静态图。

类的定义是:类是具有相似结构、行为和关系的一组对象的描述符。类是面向对象系统中最重要的构造块。类图显示了一组类、接口、协作以及他们之间的关系。

构成

    类:具有共同结构特征、行为特征、联系和语义对象集合的抽象形式。类包含类的属性、名字、操作、约束以及其他成分。类的命名尽量应用领域中的术语,应明确、无岐义,以利于相互交流和理解。类的属性、操作中的可见性使用+、#、-分别表示public、protected、private。

                                                             

关系

    关联是类与类之间的连接是类之间的一种很弱的联系,它体现的是两个类或者类与接口之间语义级别的一种强依赖关系,比如我和我的朋友;这种关系比依赖更强、不存在依赖关系的偶然性、关系也不是临时性的,一般是长期性的,而且双方的关系一般是平等的、关联可以是单向、双向的。

                                                                

     泛化(继承)关系与用例图的泛化关系如出一辙,是一种继承关系,表示一般与特殊的关系,它指定了子类如何特化父类的所有特征和行为。面向对象的说法就是is a 的关系。例如:动物的一种,即有的特性也有动物的共性。箭头指向父用例

                                                                                     

 

          聚合是一种特殊的关联,聚合表示整体与部分的关系。是一种has a的关系,此时整体与部分之间是可以分离的,他们有各自的生命周期,部分可以属于多个整体。通常在定义一个整体类后,再去分析这个整体类的组成结构。从而找出一些组成类,该整体类和组成类之间就形成了聚合关系。例如舰队是由一系列的舰船组成。需求描述中“包含”、“组成”、“分为….部分”等词常意味着聚合关系。

                                                                    

        组合关系是聚合关系中的一种特殊情况,比聚合更强,也称为强聚合;他同样体现整体与部分间的关系,但此时整体与部分是不可分的,整体的生命周期结束也就意味着部分的生命周期结束

                                                                 

   依赖关系:有两个元素如果修改X的定义可能会导致对Y的定义,则认为Y依赖X。一个类A使用到了另一个类B,而这种使用关系是具有偶然性的、、临时性的、非常弱的,但是B类的变化会影响到A依赖关系可能由各种原因引起,如一个类向另一个类发送消息,或者一个类是另一个类的数据成员类型,或者一个类是另一个类的操作的参数类型等。有时依赖关系和关联关系比较难区分。

                                                                                                      

       实现关系是用来规定接口和实线接口的类或者构建结构的关系,接口是操作的集合,而这些操作就用于规定类或者构建的一种服务接口之间也可以有与类之间关系类似的继承关系和依赖关系,但是接口和类之间还存在一种实现关系,在这种关系中,类实现了接口,类中的操作实现了接口中所声明的操作。

                                                                
0 0
原创粉丝点击