UML依赖特征和使用时注意事项

本文和大家重点讨论一下UML依赖关系,在学习UML的过程中,你经常会遇到UML关系问题,你对此是否了解,这里和大家分享一下UML依赖关系,希望本文的介绍对你学习UML有帮助。

UML学习笔记——依赖关系

UML依赖关系的特征

对于两个相对独立的系统,当一个系统负责构造另一个系统的实例,或者依赖另一个系统的服务时,这两个系统之间主要体现为依赖关系,例如生产零件的机器和零件,机器负责构造零件对象。再例如充电电池和充电器,充电电池通过充电器来充电。再例如自行车Bicycle和打气筒Pump,自行车通过打气筒来充气。图1-39为Bicycle类与Pump类的类框图。

图1-39Bicycle类与Pump类的依赖关系

Bicycle类和Pump类之间是UML依赖关系,在Bicycle类中无需定义Pump类型的变量。Bicycle类的定义如下:

 
 
 
 
  1. publicclassBicycle{  
  2. /**给轮胎充气*/  
  3. publicvoidexpand(Pumppump){  
  4. pump.blow();  
  5. }  
  6. }  

在现时生活中,通常不会为某一辆自行车配备专门的打气筒,而是在需要充气的时候,从附近某个修车棚里借个打气筒打气。在程序代码中,表现为Bicycle类的expand()方法有个Pump类型的参数。以下程序代码表示某辆自行车先后到两个修车棚里充气:
myBicycle.expand(pumpFromRepairShed1);//到***个修车棚里充气
myBicycle.expand(pumpFromRepairShed2);//若干天后,到第二个修车棚里充气

UML依赖关系使用注意事项

1.对存在依赖关系的两个类生成代码时,并不对关系的类增加属性。但产生支持关系所需的特定语句。在C++中,生成代码中会包括必要的#include语句。

例如类A依赖于类B,类A没有B属性,因此要用其他方法查找B。有三种方法:

如果B是全局的,则类A知道它存在。

如果B实例化为类A操作中的本地变量,则类A知道它存在。

如果B作为参数传递到类A中,则类A知道它存在。
在依赖关系中,必须采用这三种方法之一。

关联于UML依赖的第二个差别在于方向,关联可以是双向的,而依赖只能是单向的。

2.包之间同样存在依赖性。例如包A依赖于包B。则不能直接在另一个应用程序中复用A包,而要同时复用B包。而B包更容易复用,因为它没有依赖于其他包。

要确定包依赖性关系,就要检查Class框图中的关系。如果不同包中的类之间有关系,则包也有关系。

生成包依赖关系时,要尽量避免循环依赖性。要避免循环依赖,可以把一个包一分为二。

【编辑推荐】

  1. 专家解析 UML依赖和聚集关系有何异同
  2. UML依赖和UML关联关系的异同点解析
  3. UML基础 UML构件图简介
  4. UML依赖、关联、聚集等关系的特征解析
  5. UML依赖特征和使用注意事项解析

当前文章:UML依赖特征和使用时注意事项
文章路径:http://www.shufengxianlan.com/qtweb/news28/388278.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联