注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

陈方林

世道如今已惯,此行道路依然

 
 
 

日志

 
 

UML中类的关系  

2012-12-08 21:53:34|  分类: UML建模 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

一、关联

两个相对独立对象,当对象的实例与另外一个对象特定实例存在固定关系时,两个对象之间就存在关联关系。


1.普通关联

(1)单向关联

 

学生使用单放机,但单放机不会有使用学生

(2)双向关联




计算机与仪表之间互有通信

(3)多种关联




教师与学生既给学生授课,也给学生答疑。

(4)一个类与多个类关联





教师不仅给学生A授课,也给学生B授课。

(5)自身关联



在Employee这个类中,有1个chef和多个workers。chef和workers之间是responsible关系。

2.聚合

关联关系中一种特例,强调整体和个体之间的关系。但整体和部分呢是可以分离的,换句话就是具有各自的生命周

期。




如图电视机可以有screen、tvbox(电视机箱)、Remote Control(遥控器)等组成。没有了遥控器,电视


机依然能够存在;反过来也是一样。


3.组合

也是关联关系中一种特殊形式。同样表示整体和部分的关系,但这种关系比聚合更强。但整体的生命期结束后也就意

味着部分的生命周期结束了。




如图human可以有一个head、body等。Human不能失去head,当human的生命期结束了,head的生命周


期也就结束了。反之亦然。


二、依赖


类在实现某个功能的时候必须引用到另一个类的,则两个类之间存在依赖关系。




如图courseschedule在实现add a course方法的时候,会用到course。

三、泛化

子类继承父类的功能,是类之间或者接口之间最常见的关系。



如图 engineer 和manager继承employee父类,从而继承了父类Employee的属性和方法。

1.单重继承

子类只有一个父类

2.多重继承

一个子类有两个或两个以上的父类




如图在子类Amphibiousvehicle上有两个父类LandVehicle 和 WaterVehicle,但这时候就会出现假如,andVehicle


和WaterVehicle都有V这个属性,那AmphibiousVehicle到底继承哪一个呢?就会出现二义性。


四、实现



如图类class 、subsystem、component实现了接口interface。接口:只是给出了方法的操作和原型,并没有给出


具体的代码实现,通过类来实现。


总结:对UML类之间的关系进行了一些浅显的概述


1. 关联
2. 泛化
3. 依赖
4. 实现

  评论这张
 
阅读(174)| 评论(2)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017