当前位置: 首页 > news >正文

《设计模式》UML类图

1.UML类图介绍

UML介绍图

2.关联关系、聚合关系、组合关系之间的区别

关联和聚合的区别主要在于语义上:关联的两个对象之间一般是平等的,聚合则一般是不平等的。

聚合和组合的区别则在语义和实现上都有差别:组合的两个对象之间生命周期有很大的关联,被组合的对象在组合对象创建的同时或者创建之后创建,在组合对象销毁之前销毁,一般来说被组合对象不能脱离组合对象独立存在,而且也只能属于一个组合对象;聚合则不一样,被聚合的对象可以属于多个聚合对象。

再举例子来说:
你和你的朋友属于关联关系,因为你和你的朋友之间的关系是平等的,关联关系只是表示一下两个对象之间的一种简单的联系而已,就像我有一个朋友
你和你借的书属于聚合关系,第一是因为书可以独立存在,第二是因为书不仅仅属于你,也可以属于别人,只是暂时你拥有
你和你的心脏属于组合关系,因为你的心脏只是属于你的,不能脱离与你而存在

参考:

  • https://cloud.tencent.com/developer/article/1165689
http://www.dtcms.com/a/324202.html

相关文章:

  • 通过trae开发你的第一个Chrome扩展插件
  • A4.0:继C5.2的BJT理论引申的开关作用的应用示例
  • DAY36打卡
  • 计算机网络:求地址块128.14.35.7/20中的相关信息
  • 枚举-dfs深度优先搜索
  • 女子试穿4条裤子留下血渍赔50元引争议:消费责任边界在哪?
  • C/C++类型转换(C++四大强制类型转换)
  • 北京JAVA基础面试30天打卡06
  • 编程基础之多维数组——矩阵交换行
  • 每日五个pyecharts可视化图表-line:从入门到精通 (2)
  • 周学会Matplotlib3 Python 数据可视化-绘制折线图(Lines)
  • GPT-5与中国AI发展(DeepSeek R1视角)
  • 基于Django的图书馆管理系统的设计与实现
  • drippingblues靶机通关练习笔记
  • Jotai:React轻量级状态管理新选择
  • 【Bluetooth】【Transport层篇】第六章 基于SDIO的蓝牙硬件发送协议 SDIO Transport详解
  • QT常用控件三
  • Redis 简介与 redis-plus-plus 使用指南
  • Gin 框架错误处理机制详解
  • 第三章 向量
  • 如何培养自己工程化的能力(python项目)
  • 编程基础之多维数组——同行列对角线的格
  • Qt中的设计模式:经典的MVC,MVP和MVVM
  • 娃哈哈经销商“大洗牌”:砍掉年销300万以下经销商
  • printf函数格式化输出攻略
  • 本地WSL部署接入 whisper + ollama qwen3:14b 总结字幕校对增强版
  • CodePlan:基于代码形式规划的大模型结构化推理新范式
  • 机器学习——多元线性回归
  • 【2025CVPR-图象分类方向】ProAPO:视觉分类的渐进式自动提示优化
  • 【Tomcat】企业级web应用服务器