【面向对象】UML概述(基本构造块:事物/关系/图) 考点频率★★★★★UML基础概念每年必考是后续所有UML图知识的地基难度⭐⭐建议重点掌握UML的三大构造块、六大关系的图形符号这是所有UML题目中识别关系的“通行证”1️⃣ 什么是UMLUML统一建模语言Unified Modeling Language是一种用于软件系统可视化建模的标准语言。它不是一种编程语言而是一套图形化表示法——用各种图形符号来描述系统的结构、行为和交互。打个比方UML就是软件行业的“工程图纸”。盖房子需要平面图、结构图、水电图开发软件也需要类图、时序图、用例图。没有图纸施工队程序员只能靠猜。2️⃣ UML的三大基本构造块软考必考点UML的体系由三部分构成事物、关系、图。记住这个框架UML就学懂了七成。2.1 事物Things图的“名词”——图中有什么东西事物类型含义典型代表结构事物Structural系统的静态部分描述概念或物理元素类Class、接口Interface、用例Use Case、构件Component、节点Node行为事物Behavioral系统的动态部分描述随时间变化的行为交互Interaction、状态机State Machine分组事物Grouping用来组织其他事物的容器包Package注释事物Annotational对模型的解释和说明注释Note考试提示软考常问“下面哪个属于结构事物”——记住“类、接口、用例、构件、节点”这五个核心就够了。2.2 关系Relationships图的“动词”——事物之间怎么连接这是UML中最常考、最易混淆的部分。六大关系的图形符号必须背下来关系英文图形符号一句话理解箭头方向依赖Dependency虚线箭头------A“用到”BB变了A可能受影响A → BA依赖B关联Association实线———A和B“认识”有结构上的联系双向或单向聚合Aggregation空心菱形 实线◇———整体与部分部分可独立存在车和轮胎整体 → 部分组合Composition实心菱形 实线◆———整体与部分部分不可独立公司和部门整体 → 部分泛化Generalization空心三角 实线——▷继承关系子类→父类子类 → 父类实现Realization空心三角 虚线---▷类实现接口实现类 → 接口❓ 聚合 vs 组合的必考点聚合整体和部分可以分开独立存在。比如“汽车”和“轮胎”——轮胎拆下来还能用汽车没了轮胎还能存在。组合整体和部分同生共死。比如“公司”和“部门”——部门是公司的一部分公司没了部门就不存在或失去意义。❓ 依赖 vs 关联的区分依赖A只在某个方法里用到了B临时关系B改了A可能编译不过。关联A把B作为自己的成员变量长期关系A“认识”B。2.3 图Diagrams图的“篇章”——把事物和关系组织起来UML 2.x 共包含14种图分为两大类分类图名称核心用途结构图静态图类图、对象图、构件图、部署图、包图、组合结构图描述系统的静态结构“长什么样”行为图动态图用例图、顺序图、通信图、状态图、活动图、定时图、交互概览图描述系统的动态行为“怎么运行”软考重点考查类图、用例图、顺序图、活动图、状态图。其余了解即可。3️⃣ 一张表看懂三大构造块构造块本质核心元素软考重点事物图里有“什么”类、接口、用例、构件、节点、交互、状态关系它们“什么关系”依赖、关联、聚合、组合、泛化、实现六大符号必背图怎么“组织展示”类图结构、用例图/顺序图/活动图/状态图行为4️⃣ 经典例题例题1以下UML关系中表示整体与部分生命周期一致的关系是 。A. 依赖B. 聚合C. 组合D. 泛化解析组合强调整体与部分生命周期一致同生共死。聚合虽然也是整体与部分但部分可以独立存在。选C。例题2在UML类图中表示“一个类实现一个接口”的关系符号是 。A. 实线空心三角箭头B. 虚线空心三角箭头C. 实线箭头D. 虚线箭头解析类实现接口是虚线空心三角箭头类继承父类是实线空心三角箭头。选B。例题3以下属于UML结构图的是 。A. 用例图B. 顺序图C. 类图D. 活动图解析结构图包括类图、构件图、部署图等。用例图、顺序图、活动图都属于行为图。选C。5️⃣ 记忆口诀UML三构造事物关系图。事物分五类类用构节包结构核心五元素。关系六大种依赖关联聚合组泛化实现要分清。实线空心是泛化虚线空心是实现。聚合组合区分口诀空心菱形是聚合零件拆了还能活。实心菱形是组合同生共死不可脱。6️⃣ 小测验评论区对答案在UML类图中如果类A以成员变量的形式持有类B的引用且类B的对象可以独立于类A的对象存在则类A和类B之间的关系是 。A. 依赖B. 关联C. 聚合D. 组合本专栏日更点击头像 → 专栏《软考中级高频考点》订阅第一时间接收新内容#软考中级 #软件设计师 #UML #统一建模语言 #面向对象 #软考备考