zoukankan      html  css  js  c++  java
  • UML类图的各种关系(继承、实现、依赖、关联、组合、聚合)

    关联关系【association】(企鹅知道气候)

    关联关系是使用实例变量来实现的

    class Penguin:Bird
    {
     private Climate climate;
    }

    聚合关系【aggregation】(在大雁群类中有大雁数组对象)

    在代码层面聚合与关联是一致的,只能从语义上来区分。

    class WideGooseAggregate//大雁群类
    {
    private WideGoose[] arrayWideGoose;//大雁数组
    }

    组合(合成)关系【composition】(翅膀组合成鸟)

    体现在代码层面与关联时一致的,只能从语义来区分

    class Bird
    {
    private Wing wing;
    public Bird()
    {
    wing=new Wing();
    }
    }

    依赖关系【dependency】(动物的新陈代谢需要水和氧气)

    依赖表现为:局部变量,方法中的参数和对静态方法的调用。

    class Animal
    {
    public Metabolism(Oxygen oxygen,Water water)
    {
    //新城代谢代码
    }
    }

    类和类之间的继承关系(鸟继承于动物)

    类和接口间的实现关系(大雁实现了飞翔接口)

    主要是关联关系的细化需要注意强弱,由若到强分别是 依赖 < 关联 < 聚合 < 组合

    参考文章:https://www.cnblogs.com/jiyuqi/p/4571543.html

    参考书籍:《大话设计模式》

  • 相关阅读:
    C语言学习第八章
    C语言学习第七章
    C语言学习第六章
    C语言学习第五章
    ssh的bug
    Oracel 用户管理
    初识Kettle
    IDEA使用MAVEN时自动创建骨架卡的设置
    2017/6/12 JSON
    DDL,DML,DQL
  • 原文地址:https://www.cnblogs.com/xuelixue/p/10690817.html
Copyright © 2011-2022 走看看