UML中各箭头符号解释
创作时间:
作者:
@小白创作中心
UML中各箭头符号解释
引用
CSDN
1.
https://m.blog.csdn.net/u011942101/article/details/145822509
UML(统一建模语言)是一种用于软件系统建模的标准语言,广泛应用于面向对象的系统分析和设计。在UML图中,箭头符号被用来表示类之间的各种关系。以下是UML图中常见箭头符号的总结(以类图为核心):
1. 继承(Generalization)
- 符号:空心三角形箭头 + 实线
- 方向:子类 → 父类
class Animal {};
class Dog : public Animal {}; // Dog → Animal
2. 实现(Realization)
- 符号:空心三角形箭头 + 虚线
- 方向:实现类 → 接口
- 代码对应:class Class : public Interface {};
interface Flyable {
void fly();
}
class Bird implements Flyable {} // Bird → Flyable
3. 关联(Association)
- 符号:普通实线箭头(可带导航性)
- 方向:持有者 → 被引用者
- 代码对应:成员变量持有对象
- 示例: ClassA --> ClassB : 成员变量
// 双向关联
class Teacher {
Student* students; // 持有学生对象
};
class Student {
Teacher* teacher; // 持有教师对象
};
// 单向关联(导航性)
class Order {
Customer* owner; // Order→Customer单向持有
};
4. 依赖(Dependency)
- 符号:虚线箭头
- 方向:使用者 → 被依赖者
- 代码对应:参数传递、局部变量等临时依赖
- 示例: ClassA …> ClassB : 方法参数
class Report {
void print(Formatter fmt) { // 临时依赖Formatter
fmt.format(this);
}
};
代码示例(关联 vs 依赖)
// 关联:成员变量持有对象(长期关系)
class Order {
private:
Customer* customer; // 关联关系
};
// 依赖:临时使用对象(短期关系)
class ReportGenerator {
public:
void generate(Data data) { // 依赖关系
data.process();
}
};
5. 聚合(Aggregation)
- 符号:空心菱形 + 实线箭头
- 方向:整体 → 部分
- 特点:部分可独立存在(弱拥有)
- 示例: Car o-- Wheel
class Car {
Wheel* wheels; // 车轮可独立存在
Engine* engine; // 引擎可更换
};
6. 组合(Composition)
- 符号:实心菱形 + 实线箭头
- 方向:整体 → 部分
- 特点:部分与整体同生命周期(强拥有)
- 示例: Human *-- Heart
class Human {
Heart heart; // 心脏随人体创建/销毁
Brain brain; // 大脑不可独立存在
};
本文详细介绍了UML中各类箭头符号的含义及其在面向对象编程中的应用,通过文字描述、代码示例和图形符号相结合的方式,帮助读者更好地理解这些概念。
热门推荐
手把手教你使用万用表,电子工程师必备技能!
东契奇单换文班亚马最少要再加两个首轮签?从价值上看,不敢苟同
如何学习和运用成语?
保持镜头光洁如新:专业镜头清洗与保养指南
轻断食期间应如何搭配食物
秋天一定要固阳,把阳气守住,到了冬天就不怕体寒了
断魂处见永生:杜牧《清明》的时空诗学
莲子到底是升血糖还是降血糖?糖尿病人能吃吗?医生一文告知
边缘计算和零信任:增强企业网络安全的终极指南
TWS耳机VS传统有线耳机:哪种更适合你?
如何处理地面水泥?这种处理有哪些方法?
中医舌面象仪管理系统工作原理
揭秘「なんか」的中文意思:深入解析日語口語精髓
咖喱秘籍:探源、配料、做法与高招
孩子发烧手脚热和手脚凉的区别
皮皮虾的功效与作用 皮皮虾的营养价值
频繁排气或是肝在“求救”!中医开出三大护肝贴士
温盐深仪的设计特点与应用场景分析
假期放空指南:去福州的海边「呆」三天
明十三陵,这样逛——
山西吕梁市交口县历史沿革及行政区划
投资18亿!亚洲最大单体图书馆座落武汉!即将施工完成
邢台眼科医院为什么这么出名?
手脱皮的常见原因及护理方法解析,助你健康美丽双手
如懿对意欢的知己情:你可以拥有皇帝的真心,但不能比我多
《爱莲说》的首发地,为什么是它?
邓锋:科技创业如何穿越“技术理想与商业现实”的鸿沟
促进学生之间的团队合作
同济大学四平路校区出行全攻略:24条公交+2条地铁线路详解
揭秘人体奇迹:我们的身体是如何自愈的