• 泛化、聚合、组合、依赖


    泛化(Genaralization)

      在上图中,空心的三角表示继承关系(类继承),在UML的术语中,这种关系被称为泛化(Generation)。Person(人)是基类,Teacher(教师),Student(学生),Gust(来宾)是子类。

      若在逻辑上B是A的“一种”,并且A的所有功能和属性对B而言都有意义,则允许B继承A的功能和属性。

      例如,教师是人,Teacher是Person的“一种”(a Kind of)。那么类Teacher可以从类Person派生(继承)。

      如果A是基类,B是A的派生类,那么B将继承A的数据和函数。

      如果类A与类B毫不相干,不可以为了使B的功能多些而让B继承A的功能和属性。

    聚合(组合):

      若在逻辑上A是B的'一部分"(a part of),则不允许B从A派生,而是要用A和其他东西组合出B。

      聚合的类型分为无,共享(聚合),复合(组合)三类。

    聚合(aggregation):

      聚合的意义表示has-a关系。聚合是一种相对松散的关系,聚合类B不需要对聚合A类负责。

    组合(composition):

      更为坚固的关系---组合(composition)(聚合类型为复合)。组合表示的关系也是has-a,不过这里,A的生命周期受B的控制。

    依赖(Dependency):

      如果A被修改,那么类B会受到影响。

  • 相关阅读:
    微服务之SpringCloud基础
    java 多线程学习
    tomcat性能优化
    js模块化规范
    jsonp及cors
    es6之各种数据类型的扩展
    es6之Promise
    es6之Set和Map
    es6之Generator
    es6之Iterator
  • 原文地址:https://www.cnblogs.com/QoQian/p/4833640.html
Copyright © 2020-2023  润新知