UML中的关系
作者:@罗一
本文为作者原创,转载请注明出处:https://www.cnblogs.com/luoyicode/p/17765888.html
类和接口的关系
实现 (enable)
接口提供一组功能的描述,而实现就是编写接口的代码部分
Driver enable Drivable,Driver 实现了 Drivable
class Driver implements Drivable
类图(虚三角形 + 虚线):
对象和对象的关系
继承 (is)
Driver is Person,Driver 继承了 Person
class Driver extends Person
类图(虚三角形 + 实线):
关联关系
依赖 (use)
Driver use a Car,Driver 依赖了 Car
class Driver {
drive (Car car)
}
类图(箭头 + 虚线):
聚合 (have)
Driver have Car,Driver 聚合了 Car
class Driver {
Car car;
drive() -> car.drive();
}
类图(虚菱形):
组合 (contain)
Driver contain Car,Driver 组合了 Car
类图(实菱形):
和聚合关联的区别
生命周期不同:
- 聚合关联作为成员引用了对象,删除整体对象不影响成员
- 组合关联也是作为成员引用了对象,但是删除整体对象必须删除成员
如果您觉得阅读本文对您有帮助,请点一下“推荐”按钮,您的“推荐”将是我最大的写作动力!欢迎各位转载,但是未经作者本人同意,转载文章之后必须在文章页面明显位置给出作者和原文连接,否则保留追究法律责任的权利。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现