UML箭头指向笔记

博客介绍了UML中不同关系的箭头指向。继承关系中,箭头从子类指向父类;依赖关系里,箭头从被动改变对象指向产生改变对象;组成或关联关系时,箭头由整体指向部分。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

继承的箭头从子类指向父类
依赖的箭头从被动改变的对象指向产生改变的对象
组成或关联的箭头由整体指向部分
### UML箭头的含义及用法 UML(Unified Modeling Language)类图中的箭头和线条是用来表达类之间关系的重要工具。以下是常见的几种箭头及其具体含义: #### 1. **依赖 (Dependency)** 依赖表示一种较弱的关系,其中一个类的行为会受到另一个类变化的影响。在UML中,这种关系通过一条带有虚线的箭头来表示[^1]。例如,如果类A访问了类B的方法或属性,则说明类A依赖于类B。 ```plaintext Class A ────> Class B ``` 这里的箭头是从类A指向类B,意味着类A依赖于类B的功能。 --- #### 2. **关联 (Association)** 关联表示两个类之间的结构化关系,通常是一个类的对象持有另一个类对象的引用。关联可以通过实线加箭头表示,箭头的方向指明了导航方向[^4]。如果没有箭头,则默认为双向关联。 - 单向关联:`Class A → Class B` 表示类A可以访问类B。 - 双向关联:`Class A ↔ Class B` 表示两者都可以互相访问。 关联还可以进一步细分为一对一、一对多或多对多的关系,并可通过多重性标注加以补充[^5]。 --- #### 3. **聚集 (Aggregation)** 聚集是关联的一种特殊形式,用来描述整体与部分之间的关系。在这种情况下,部分可以独立存在而不必依附于整体。聚集用带有空心菱形的实线箭头表示[^1]。 ```plaintext Whole ←○ Part ``` 在这个例子中,“Part”作为“Whole”的一部分,但它可以在不隶属于任何“Whole”的情况下继续存在。 --- #### 4. **组合 (Composition)** 组合也是整体与部分的关系,但更强调部分的生命期完全受控于整体。一旦整体销毁,所有的组成部分也会随之消失。因此,组合被认为是更强的聚集形式,使用实心菱形箭头表示。 ```plaintext Whole ◊──→ Part ``` 这意味着“Part”无法脱离“Whole”而单独存在。 --- #### 5. **泛化 (Generalization)** 泛化体现了继承的概念,即子类从父类派生并共享其特性。在UML中,泛化用带实线的三角形箭头表示,箭头总是指向父类[^2]。 ```plaintext Subclass ───▲ Parent Class ``` 这一符号清晰地标记出了父子类间的层次结构。 --- #### 6. **实现 (Realization)** 当一个类实现了某个接口时,就形成了实现关系。此关系以虚线加上开放式的三角形箭头呈现出来,其中箭头指向被实现的接口[^2]。 ```plaintext Implementing Class ───▷ Interface ``` 这反映了具体的类如何满足抽象定义的要求。 --- ### 总结表 | 符号 | 名称 | 描述 | |--------------------------|--------------|----------------------------------------------------------------------| | `────>` | 依赖 | 显示了一个类对另一类功能的间接需求 | | `────→` | 关联 | 展现两者的联系强度介于依赖与其他紧密型态间 | | `<○───→` | 聚集 | 整体拥有部件,但部件能独自存活 | | `<◊───→` | 组合 | 部件的存在依赖于整体 | | `────▲` | 泛化 | 子类继承自父类 | | `────▷` | 实现 | 类遵循特定接口的规定 | 以上每种关系都有助于开发者更好地理解系统的架构设计以及各个组件是如何交互工作的[^3]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值