Java编程下常见关系

关系

  • 泛化(Generalization):使用关键字extends表示

记忆:实线三角

![外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传](https://img-home.csdnimg.cn/images/20230724024159.png?origin_url=Java%E5%9F%BA%E7%A1%80_md_files%2F5b5a850在这里插入图片描述
0-1dc0-11ef-8496-038d0f675d6a.jpeg%3Fv%3D1%5C%26type%3Dimage&pos_id=img-mHjzVY9f-1717074615573)

  • 实现(Realization):使用关键字implements表示

记忆:虚线三角

![外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传](https://img-home.csdnimg.cn/images/20230724024159.png?origin_url=Java%E5%9F%BA%E7%A1%80_md_files%在这里插入图片描述
2F84514660-1dc0-11ef-8496-038d0f675d6a.jpeg%3Fv%3D1%5C%26type%3Dimage&pos_id=img-oyjuncXA-1717074615574)

  • 聚合(Aggregation):整体和部分的关系,弱依赖,整体不存在部分还是存在

记忆:空菱形
在这里插入图片描述

![外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传](https://img-home.csdnimg.cn/images/20230724024159.png?origin_url=Java%E5%9F%BA%E7%A1%80_md_files在这里插入图片描述
%2Fbe316810-1dc0-11ef-8496-038d0f675d6a.jpeg%3Fv%3D1%5C%26type%3Dimage&pos_id=img-46cMQlMc-1717074615574)

  • 组合(Composition):整体和部分的关系,强依赖。整体不存在,部分也不存在

记忆:实菱形

![外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传](https://img-home.csdnimg.cn/images/20230724024159.png?origin_url=Java%E5%9F%BA%E7%A1%80_md_files%2F05461f70-1dc1-11ef-8496-038d0f675d6a.jpeg%3Fv%3D1%5C%26type%3Dimage&pos_id=i在这里插入图片描述
mg-bgO0eTla-1717074615575)

  • 依赖(Dependency):强调在运行过程中进行的

记忆:虚线箭头

![外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传](https://img-home.csdnimg.cn/images/20230724024159.png?origin_url=Java%E5%9F%BA%E7%A1%80_md_files%2F3c6074f0在这里插入图片描述
-1dc2-11ef-8496-038d0f675d6a.jpeg%3Fv%3D1%5C%26type%3Dimage&pos_id=img-Y3Ph8mtI-1717074615576)

A类和B类的依赖关系有三种:

  1. A类是B类(于某方法)中的局部变量

  2. A类是B类方法参数

  3. A类向B类发送消息,B类状态发生改变

  • 关联(Assocation):在运行之前就决定好的,比如学校和学生关系是1对多

记忆:线条两侧有关联标识

![外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传在这里插入图片描述

使用场景:考试中、编写代码时、学习设计模式、开源代码阅读…

笔者看法:在平时学习工作中,随着编码和阅读源码的深入,对以上关系的掌握会愈发熟练,不必刻意死记硬背,切记不要学死知识~

  • 12
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

感恩的心_Yang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值