zoukankan      html  css  js  c++  java
  • UML关系总结

    在UML中,事物间的关系按照is a, has a和use a三个层级可以分为六种关系。分别是泛化:generalization、实现:realization、组合:composition、聚合:aggregation、关联:association以及依赖:dependency。

    1.泛化:generalization

    泛化是一种is a关系,表示一般到特殊的关系,一般用在继承中。比如“animal”和“tiger”,a tiger is an animal.

    符号: 空心三角形指向抽象类,线条用实线.

    2.实现:realization

    实现是一种is a关系,表示实现某种能力,用来实现接口。比如“fly”和“bird”,a bird is something that can fly.

    符号: 空心三角形指向接口,线条用虚线。

    3.组合:composition

    组合是一种has a关系,表示整体跟部分,注意局部不可以脱离整体而存在。比如“tree”和“leaf”,A tree has a leaf.

    符号: 线条用实线,实心菱形指向整体,箭头指向部分。

    4.聚合:aggregation

    聚合是一种has a关系,表示整体跟部分,但是相对于组合来说,部分可以脱离整体而存在。比如“forest”和“rabbit”,A forest has a rabbit, the rabbit run away from the forest, it run into a zoo, And then, the zoo has that rabbit.

    符号: 线条用实线,空心菱形指向整体,箭头指向部分。

    5.关联:association

    关联是一种非整体和部分的has a关系,比如“child”、“teacher”和“toy”,一个child会有多个teacher,一个teacher会有多个child,一个child会有多个toy,一个toy只会属于一个child.

    符号: 线条用实线,双向关系可以不用箭头或者用两个箭头,单向关系用一个箭头,要标注关联数量。

    6.依赖:dependency

    依赖是一种use a关系。一般表现为局部变量、函数形参。比如“monkey”和“stone”,A monkey can use a stone.

    符号: 线条用虚线,箭头指向被使用者。

    以上6种关系是从抽象与具体、整体与局部、使用与被使用三个维度总结出来。只有弄懂符号背后的这三种关系才能够谈得上理解与使用这些符号。
    ---------------------
    作者:长风Qiu
    来源:CSDN
    原文:https://blog.csdn.net/chang_mu/article/details/80501657
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    CCF CSP 201709-1 打酱油 (贪心)
    CCF CSP 201712-1 最小差值
    CCF CSP 201612-1 中间数
    CCF CSP 201609-1 最大波动
    CCF CSP 201604-1 折点计数
    CCF CSP 201512-1 数位之和
    CCF CSP 201509-1 数列分段
    CCF CSP 201503-1 图像旋转 (降维)
    CCF CSP 201412-1 门禁系统
    CCF CSP 201409-1 相邻数对
  • 原文地址:https://www.cnblogs.com/feng9exe/p/9953687.html
Copyright © 2011-2022 走看看