再学类图关系

        大多数类之间都是以某种方式相互协作的,这些方式就是这些类之间的关系。关系是事物间的连接,类图有四种非常常用及重要的关系——依赖、泛化、关联、实现。

【依赖关系】
         有两个元素X、Y,如果修改X的定义可能会引起对另一个元素Y的定义的修改,则称元素Y依赖于元素X。类的关系中,引起依赖的原因有:一个类向另一个类发消息;一个类是另一个类的数据成员;一个类是另一个类的某个操作参数。
         依赖关系是类关系中很泛的一种关系,用带箭头的虚线表示。
【泛化关系】
         类图中的泛化关系描述了一般事物与该事物中的特殊种类之间的关系,即父类与子类之间的关系。继承关系是泛化关系的反关系。子类是父类的继承,父类则是子类的泛化。关系是一样的,都是用带空心箭头的实线表示,只是继承和泛化的参照物不同。
         对泛化关系有3种要求:
         (1)子类应与父类完全一致,父类所具有关联、属性和操作,子类都应该具有。
         (2)子类中除了与父类一致的信息之外,还可以有子类独有的信息。
         (3)可以使用父类实例的地方,也可以使用子类实例。
【关联关系】
         关联关系表示两个类之间存在某种语义上的联系。关联关系是所以关系中最通用、语义最弱的。使用实线来表示。聚合和组合是两种特殊的关联关系。
         聚合:表示整体和部分的关系,聚合关系表示部分可以独立于整体存在的。比如大雁和雁群的关系。用空心菱形表示
         组合:表示部分是完全依赖于整体存在的,部分独立于整体之后就不能单独存在。比如翅膀和大雁的关系。用实心菱形表示。
【实现关系】
         实现关系是用来规定接口和实现接口的类或组件之间的关系,一个类实现接口类似于子类对父类的继承。用带空心箭头的虚线表示。
【总结】
         类很少会单独存在,类图之中类与类之间的关系都可以用这四种关系表示出来,也清晰的让我们根据类图了解了代码,了解了具体实现。

你可能感兴趣的:(再学类图关系)