热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

UML中的四种核心关系解析

在学习UML图时,可以将其内部的关系类比为人体的血管系统。每条“血管”所传输的信息和数据流向各不相同,起点和终点也各异。因此,掌握这些关系的辨识方法是理解UML图的关键。这四种核心关系包括关联、聚合、泛化和依赖,它们在建模过程中起着至关重要的作用。通过深入分析这些关系,可以更准确地描述系统结构和行为。

学习了UML图以后发现里面的关系就想人体的血管一样,每一条血管输送的血液到达的地方不一样,从哪里输出也是不同的,所以就要先学会辨别这里面的关系。

       在UML中有6种关系:泛化、实现、依赖、关联、聚合、组合。

泛化:就是继承的一种体现,子类继承父类所具有的所有,这种继承就是泛化可以通过一个等式表示出来:子类=父类的方法和属性+子类自己新增的方法和属性。

箭头符号:空心三角形实线

实现:就是类对接口的实现的关系,举例就是有一个行为是“呼吸”的接口,通过一个人 类实现这个呼吸的动作。

箭头符号:一条虚线+空心箭头。

依赖:一个类的实现需要通过另一个类的协助,通俗点说就是开门需要钥匙,然后我们使用钥匙才能把门打开,我们和钥匙就是一种依赖关系。

箭头符号:虚线加同箭头

关联:表示“拥有“,关联具有长期性、平等性(可双向),在现实生活中就是夫妻关系的一种体现,当然一对多的关联也有,比如说老师和学生等。

箭头符号:双向关联,一条实线或一条实线+两个箭头;单向关联,一条实线+一个箭头。

剩下的两个关系可以归类到关联关系种,因为它们两个体现的是整体与部分的关系,不过它们还是要区分一下的,聚合的关联关系相比较组合的关联关系就弱了,聚合表现的整体与部分的关系是可以独立存在的,如部门与员工之间的关系,部门解散并不影响员工,而员工离职也不影响这个部门的存在。组合就是一种强烈的整体与部分的关系体现了,手机和手机电池就是一种体现,如果手机没有电池它就不能用,而电池不在上手机那它也就没有作用,二者不可单独存在,这就是一种组合关系。

聚合箭头符号:一条实线+空心菱形

组合箭头符号:一条实线+实心菱形


推荐阅读
  • 深入解析Android 4.4中的Fence机制及其应用
    在Android 4.4中,Fence机制是处理缓冲区交换和同步问题的关键技术。该机制广泛应用于生产者-消费者模式中,确保了不同组件之间高效、安全的数据传输。通过深入解析Fence机制的工作原理和应用场景,本文探讨了其在系统性能优化和资源管理中的重要作用。 ... [详细]
  • 在将Excel数据导入MySQL数据库的过程中,如何确保不会生成重复记录?本文介绍了一种方法,通过PHP脚本检查数据库中是否存在相同的“Code”字段值,从而避免重复记录的产生。该方法不仅提高了数据导入的准确性,还增强了系统的健壮性。 ... [详细]
  • 深入解析十大经典排序算法:动画演示、原理分析与代码实现
    本文深入探讨了十种经典的排序算法,不仅通过动画直观展示了每种算法的运行过程,还详细解析了其背后的原理与机制,并提供了相应的代码实现,帮助读者全面理解和掌握这些算法的核心要点。 ... [详细]
  • 在数轴上给定若干线段,探讨如何选取不超过 k 个线段以实现最大覆盖范围的问题。本文通过网易面试真题,深入解析“最优线段覆盖”算法,提供详尽的解题思路与实例分析。在线评测平台提供了相关测试案例,帮助读者更好地理解和掌握该算法的应用。样例输入展示了一个具体的场景,便于读者快速上手实践。 ... [详细]
  • 本文深入探讨了层叠样式表(CSS)的核心原理与应用技巧,旨在帮助读者全面理解CSS的工作机制。从选择器、属性到布局模式,文章详细解析了CSS的关键概念,并通过实例展示了如何高效运用这些技术,提升网页设计与开发的水平。 ... [详细]
  • ARM指令集介绍3.1ARM指令集分为6类:跳转指令数据处理指令程序状态寄存器(PSR)传输指令LoadStore指令协处理器指令异常中断产生指令3.1.1跳转指令A ... [详细]
  • Android的设计模式解释器模式
    前言Android的设计模式系列文章介绍,欢迎关注,持续更新中:Android的设计模式-设计模式的六大原则创建型模式:A ... [详细]
  • 1、dt视图结构内容dt+结构名要么dt+结构名+住址kddt_object_headernt!_OBJECT_HEADER+0x000PointerCount:Int4B+0x ... [详细]
  • 首先介绍一下几个概念:按位与运算符&:是双目运算符,其功能是参与运算的两数各对应的二进位相与。只有对应的两个二进位均为1时࿰ ... [详细]
  • 一.名称二.问题(为了解决什么问题)很好辨认,举一些常见的例子:猫鼠游戏广播收音机事件监听等等三.解决方案࿰ ... [详细]
  • 1、UNIX 入门指南 – 什么是 UNIX ?
    UNIX操作系统是一系列的程序,将计算机和用户联系在一起。分配系统资源和协调计算机内部的所有详细信息的计算机程序被称为操 ... [详细]
  • UML系统分析与设计02-用例图和活动图(上)
    每一个产品的需求是对现实世界特定问题的一种描述,而有些问题描述可能是非常的错综复杂,以至在我们对其进行分析时,会觉得无从下手甚至不知所措。需求分析是系统设计和开发的基础,需求分析的 ... [详细]
  • 极大似然估计_极大似然估计小结
    极大似然估计极大似然估计(MaximumLikelihoodEstimation,MLE),是用来估计一个概率模型参数的方法 ... [详细]
  • 本文讨论了当某位排位靠前的涉众提供了一张精美的界面图片时,是否可以将其作为设计约束。同时还探讨了高质量素材和愿景之间的关系,以及老大自身的软件方法和建模技能。 ... [详细]
  • 【shell】网络处理:判断IP是否在网段、两个ip是否同网段、IP地址范围、网段包含关系
    本文介绍了使用shell脚本判断IP是否在同一网段、判断IP地址是否在某个范围内、计算IP地址范围、判断网段之间的包含关系的方法和原理。通过对IP和掩码进行与计算,可以判断两个IP是否在同一网段。同时,还提供了一段用于验证IP地址的正则表达式和判断特殊IP地址的方法。 ... [详细]
author-avatar
loloyoyo555
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有