类之间的关系

类之间的关系有以下四种——

1、依赖关系

  • 依赖指得是类之间的调用关系,一个类调用了另一个类的方法。
  • 如果类A在它的方法中使用到了另一个类B的方法或者属性,但是这种使用关系是具有偶然性的、临时性的、非常弱的,但是类B的变化会影响到类A,这个时候类A依赖类B。
  • 举例:人在出远门的时候会依赖车的关系;喝水会依赖杯子的关系等,依赖总是单向的。

2、关联关系

  • 关联体现的是两个类之间语义级别的一种强依赖关系,比如我和我的朋友,这种关系比依赖更强、不存在依赖关系的偶然性、关系也不是临时性的,一般是长期性的,而且双方的关系一般是平等的。
  • 方向性(代表一个类是否拥有能够导航到另外一个类的知识,比如导师与学生之间的关系是属于双向关联;学生与课程之间的关系是属于单向关联)、多重性(有1对1、1对多、多对多关联关系)、聚集性(特指对象之间存在一种”整体与部分“的包含关系,可分为聚合与组合两种具体类型)是描述关联关系的3个特征维度;

    关联:表示订单与产品对象之间存在关系;关联关系还可以细化出聚集和构成。
    1. 关联关系一般是作为类变量形式出现;
    2. 关联分单向、双向关联,此处是订单关联产品的单向关联;
    3. 聚集的对象一般是通过构造方法、set方法注入的。
    4. 构成是直接在对象中实例化出来的。

3、泛化关系

  • 泛化就是从子类抽象出一个父类 ,包含了继承关系(由父类具体化一个子类)。
  • 继承关系指的是一个类(称为子类、子接口)继承另外的一个类(称为父类、父接口)的功能,在UML类图设计中,继承用一条带空心三角箭头的实线表示,从子类指向父类,或者子接口指向父接口。

                                                                           

  •  继承与泛化可以看作一个逆过程

4、实现关系

  •  实现指的是一个类实现一个interface接口(可以是多个)的功能,在UML类图设计中,实现用一条带空心三角箭头的虚线表示,从类指向实现的接口。

                                                                            

5.这四种关系的联系的紧密度排行为:

实现 > 聚合 > 关联 > 依赖

posted @ 2020-03-14 14:11  李李林  阅读(2239)  评论(0编辑  收藏  举报