5分钟理清UML关系(泛化,关联,依赖,实现,组合,聚合)

定义:

UML中有类与类,类与接口,接口与接口的关系,常见有泛化(generalization),关联(association),依赖(dependency),实现(realization)。

总览:

强弱关系:

(通过线就可以看出来,实线比虚线强,三角形最稳定):泛化>实现>组合>聚合>关联>依赖

(1)Generalization(泛化/继承):(类和类)

定义:

是一种特殊/一般关系,特殊元素(子元素)的对象可替代一般元素(父元素)的对象。用这种方法,子元素继承了父元素的结构和行为,并可以增加它自己的新功能。

泛化关系用来描述类的一般和具体之间的关系。是类与类或者接口与接口最常见的关系。

表达方式:

箭头指向父元素。

举例:

Employee是父元素,给Employee赋予一个属性,下面的Engineer和Manager都会拥有这个属性,增加了软件的复用性,减少维护代价。

例2:

鸟继承动物的特性:

(2)Realization(实现):(类和接口)

定义:

是指一个class实现一个或多个接口,表示类具备了某种能力,实现是类与接口中最常见的关系。

表示方式:

箭头指向接口。

举例:

类实现了一个接口:大雁实现了飞翔接口

 

(3)组合:(类和类)

定义:

“部分”不能脱离“整体”单独存在,其生命周期应该是一致的。比如你和你的大脑,是整体和部分的关系。

表达方式::

举例:

翅膀以及其他器官组成鸟。

 例2:

狗头和爪子组合成狗:

(4)聚合:(类和类)

定义:

可以相互独立存在的叫聚合.

表达方式:

举例:

书架和书。

例2:

大雁和雁群:

(5)Association(关联):类和类

定义:

描述了两个或多个类之间或者类与接口之间的强依赖关系。比依赖强烈,是一种长期性的关系,指出了一个事物的对象与另一个事物的对象之间的语义上的连接。关联是最常见的关系。

表达方式:

使用单箭头表示单向关联,使用双箭头或直线表示双向关联。

数字的含义:

关联有两个基数,一个端点一个。常见的基数及其含义:

0...1:0或1个实例。

0...*:0到无限

1:只有一个实例

1...*:至少有一个实例。

举例:(类与类)

(6)Dependency(依赖):类和类

定义:

表示类与类之间的连接。就是单向使用。凡是人类都使用空气,这种必须的需求,我们称之为依赖关系。这种依赖具有偶然性,临时性,非常弱的关系。

表达方式:

用带箭头的虚线表示,指向依赖物。

举例:

动物依赖(需要)氧气和水:

例2:

一个类的方法,getcontactinformation()用到了contctinformation类。getpersonalrecords()用到了personnelrecord类。所以是依赖关系。如图:

 

  • 7
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 9
    评论
你可以按照以下步骤来快速理清 Keil 5 工程: 1. 打开 Keil 5 软件并导入你的工程文件。点击 "Project" 菜单,然后选择 "Open Project" 来打开工程文件。 2. 确保你的工程文件中的所有源文件和头文件都已正确添加到工程中。如果有文件缺失,你可以使用 "Add Files to Group" 功能添加它们。 3. 检查工程的目录结构,确保所有的文件都被正确地组织在适当的文件夹中。你可以使用 "Create Folder" 功能来创建新的文件夹,并使用 "Move Files to" 功能将文件移动到相应的文件夹中。 4. 确定每个源文件的编译顺序。在工程窗口中,右键单击源文件,然后选择 "Options for File"。在弹出的对话框中,选择 "C/C++" 选项卡,然后调整编译顺序。 5. 配置编译选项和链接选项。在 "Project" 菜单中选择 "Options for Target"。在弹出的对话框中,你可以设置编译器选项、链接器选项和调试选项,以满足你的项目需求。 6. 检查工程的依赖关系。在工程窗口中,右键单击工程名称,然后选择 "Manage Project Items"。在弹出的对话框中,你可以查看和管理工程的依赖关系,确保所有的文件都正确地相互依赖。 7. 构建和调试工程。点击 "Project" 菜单,然后选择 "Build" 来编译工程。如果编译成功,你可以使用 "Debug" 功能进行调试。 通过按照这些步骤,你可以快速理清 Keil 5 工程,并开始进行开发和调试。祝你好运!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值