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

Search的博客

不断学习中!

 
 
 

日志

 
 

UML类图(类之间关系理解)  

2013-06-10 12:16:45|  分类: |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

泛化(继承)

继承就是我们在写程序时类之间的继承,其表示符号如下所示,其中箭头指向父类。

 

UML类图(类之间关系理解) - Search - Search的博客

 


实现

实现描述的是接口的实例化,其表示符号如下图所示,其中箭头执行要实现的接口

UML类图(类之间关系理解) - Search - Search的博客

接口

我们在学习一件事情的时候,要问自己三件事情,是什么?有什么作用?怎样使用?

接口描述的是弱化的类,实现接口也就相当于继承类,但是接口与类有一定的区别,接口是属于抽象实现,在接口中只能定义方法而不能够实现方法,并且只能定义public static final的变量类型(这一点很好理解,在接口中既然不能够实现方法,所以你定义一个private的变量谁用啊,另外我们显然不想让所有实现统一接口的对象共享同一变量,因此需要定义为final,只允许外部访问而无法更改,也就是说在接口中只定义抽象出来的公共属性,而不要定义可以被改变的属性)

抽象类

其实接口也算是抽象类的一种变形,抽象类中同样能够定义抽象方法而不能够具体实现,但是抽象类中可以拥有非抽象变量,非抽象方法,同样可以在抽象类中定义方法的默认实现。只能够继承一个抽象类,而可以实现多个接口。抽象类很大程度上表述的是is-a关系,而interface表述的是like-a的关系。

依赖

所谓依赖指的是一个类的实现需要依赖于另一个类,比如我们我们在一个类中应用了应外一个类作为参数,其具体表示如下图,其中箭头执行需要调用的类。

 

 

UML类图(类之间关系理解) - Search - Search的博客

 

 关联

关联表述的是一种引用关系,其表示图下图,箭头执行被包含的类,

 

 

 单向关联

UML类图(类之间关系理解) - Search - Search的博客

 ,表示的是A类中有一个B类属性,表示的是A类可以直接看到B类,可以直接调用B类。

双向关联

双向关联于单向关联类似,只不过是AB都互相有一个对方做为属性。

UML类图(类之间关系理解) - Search - Search的博客
 不画箭头代表双向关联

组合

组合表述的是contains-a的关系,其具体表述如下图,箭头执行contains的一方。

 

UML类图(类之间关系理解) - Search - Search的博客

 


聚合

聚合表述的是has-a的关系,其具体表述如下图,箭头执行has的一方,聚合与组合的区别是,聚合表示离开主体,个体让然能够存活,而组合则不可以,组合可以近似理解为大雁和翅膀的区别,而聚合可以理解为雁群和一只大雁关系。

UML类图(类之间关系理解) - Search - Search的博客
 
有关UML的相关相关链接:
 
UML类图中关联关系描述较好
UML类图基本关系描述较好
抽象类与接口区别

  

  评论这张
 
阅读(290)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

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

页脚

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