UML类图的箭头含义

 

1、关联:类之间的一种关系,如学生和老师。
代码中的表示:

class Student{
private Teacher mTeacher;
}
class Teacher{
}

 

2、双向关联:和关联一样,不过它是两个方向的,如学生和老师,老师和学生,双向关系。
代码中表示:

class Student{
private Teacher mTeacher;
}
clsass Teacher{
private Student mStuent;
}

 

3、聚合:整体和部分的关系,is-a的关系,如手是人体的一分部。通常是在构造函数的时候,通过new创建出来。
代码中的表示:

class People{
private Hand mHand;
public People(){
mHand = new Hand();
}
}

 

4、组合:整体和部分的关系,has-a的关系,如汽车拥有引擎。通常是通过构造函数或者setter赋值进去的。
代码中表示:

class Car{
private Engine mEngine;
public void setEngine(Engine e){
mEngine = e;
}
}

 

5、依赖:是使用的关系,例如汽车使用喇叭来鸣笛,调用汽车鸣笛的方法时,就依赖于喇叭鸣笛方法。
代码中表示:

class Car{
private Horn mHorn;
public void whistle(){
mHorn.whistle();
}

 

6、继承:不解释。
7、实现接口:不解释。

小结:
1、继承已实现的类图,箭头是三角形的,其他的是不闭合的箭头。
2、关联与聚合在代码中的表示,都类似。主要是构建模型的时候,理解上的差别。

posted @   47号Gamer丶  阅读(8652)  评论(1编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
点击右上角即可分享
微信分享提示