博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【UML】四大关系篇
阅读量:4046 次
发布时间:2019-05-24

本文共 693 字,大约阅读时间需要 2 分钟。

 

UML中的四类关系:关联Association、依赖Dependency、泛化Generalization、实现Realization。

 

一、依赖(Dependency)

    使用关系:即一个类的实现需要使用另一个类的方法或者属性。如植物和水,植物的生存需要水,两者之间存在“使用”关系。

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

     代码表现:局部变量、方法的参数或者对静态方法的调用。

 

 

二、关联(Association)

      拥有关系:它使一个类知道另一个类的属性和方法。双向关联无箭头,单向关联右箭头。如,雇员和公司之间是互相知道的关系,课程需要被学生所知道。

     符号:带普通箭头或实心三角形箭头的实心线,指向被拥有者。

 

    聚合(Aggregation):部分可以离开整体而单独存在。如公司可以分为几个部门,每个部门可以独自经营内部活动。

        符号:带空心菱形的是实心线,菱形指向整体。

 

    组合(Composition):部分不能离开整体而单独存在。如门把手是门的一部分,但是没有门时,门把手的存在也就没必要了。

        符号:带实心菱形的实线,菱形指向整体。

 

 

三、泛化(Generalization)

  继承关系:表示一般与特殊的关系,子类泛化出父类,而父类特化出的子类拥有父类所有的属性和方法。

   符号:带空心三角箭头的实线,箭头指向父类。

 

四、实现(Realization)

    类与接口的关系:表示类是接口所有特征和行为的实现。类目之间的予以关系,在该关系中一个类目描述了另一个类目保证实现的合约。如定义一个行为是“跳舞”,而“人”实现了“跳舞”这个动作。

    符号:带空心三角箭头的虚线,箭头指向接口(Ibrush)。

 

 

你可能感兴趣的文章
leetcode1792第232场周赛第三题,以及二维数组根据某一列进行排序——优先队列
查看>>
学生网上选课管理系统的设计与实现—计算机类专业课程设计(毕业设计)
查看>>
新建动态web工程项目红叉报错,以及Could not publish server configuration for Tomcat v9.0 Server at localhost.
查看>>
机器学习SVM的车牌识别系统—计算机专业课程设计(毕业设计)
查看>>
leetcode 80. 删除有序数组中的重复项 II
查看>>
课程设计(毕业设计)—学生宿舍管理系统—计算机类专业
查看>>
毕业设计(课程设计)—SpringBoot网上订餐系统的设计与实现—计算机类专业课程设计(毕业设计)
查看>>
毕业设计(课程设计)—个人博客系统(微博)的设计与实现—计算机类专业课程设计(毕业设计)
查看>>
牛客(中兴捧月)—B-切绳子
查看>>
剑指Offer 13.机器人的运动范围——DFS和BFS
查看>>
Java中GUI编程总结—AWT中的Frame容器、panel面板、布局管理
查看>>
剑指offer12.矩阵中的路径—DFS+剪枝
查看>>
Java中GUI编程总结—事件监听、TextField监听、画笔、(鼠标、窗口、键盘)监听
查看>>
Java中GUI编程总结—Swing(窗口、面板、弹窗、标签、按钮、列表、文本框)
查看>>
Java中map容器分别根据键key和值value进行排序的总结
查看>>
剑指offer面试题16. 数值的整数次方——快速幂
查看>>
剑指 Offer 39. 数组中出现次数超过一半的数字——摩尔投票法
查看>>
python中SQLite3 数据库语句使用总结——增删改查
查看>>
Java网络编程总结
查看>>
leetcode 477. 汉明距离总和——超出时间限制
查看>>