uml类图的设计,uml图的类型

  uml类图的设计,uml图的类型

  这是一个关于UML基础知识的教程;目前我们都忙得没时间做项目。基本上没有做过真正的类级详细设计,更不用说用UML实现规格建模了。本文主要梳理了我之前一直很困惑的几个类之间的关系,让我们在真正使用UML设计类图的时候,比如。这些关系描述如下:

  继承

  它意味着一个类(称为子类和子接口)继承了另一个类(称为父类和父接口)的功能,并且可以增加自己新功能的能力。继承是类或接口之间最常见的关系。在Java中,这种关系由关键字extends明确标识,这在设计中通常是没有争议的。

  实现

  指实现接口interface(可以是多个)功能的类class;是实现类和接口之间最常见的关系;在Java中,这种关系由关键字implements明确标识,这在设计中一般是没有争议的;

  依靠

  可以简单理解为一个A类使用另一个B类,这种使用是偶然的、暂时的、非常微弱的,但是B类的变化会影响A;比如有人要过河,需要借船,那么人和船的关系就是依赖;在代码层面,B类在一个方法中被A类作为参数使用;

  有血缘关系

  他体现了两个类之间,或者类和接口之间的强语义依赖,比如我和我的朋友;这种关系强于依赖,没有依赖的机会,关系不是暂时的,一般是长期的,双方关系一般是平等的,关系可以是单向的,也可以是双向的;在代码层面,关联的类B以类属性的形式出现在关联的类A中,也可能是关联的类A引用了一个具有关联的类B类型的全局变量;

  聚合

  它是聚合的特例,体现了整体与部分的关系,所有权,也就是HAS-A的关系,此时整体与部分可以分离,可以有各自的生命周期,部分可以属于或被多个整体对象共享。比如电脑和CPU的关系,公司和员工的关系等等。在代码层面,与关系一致,只能从语义层面区分。

  结合

  组合也是联想关系的特例,体现了一种包含——a关系,比聚合更强,也叫强聚合;他也体现了整体与部分的关系,但此时整体与部分是不可分的,整体生命周期的结束意味着部分生命周期的结束;比如你和你的大脑;在代码层面,与关系一致,只能从语义层面区分。

  这两种关系的传承和落实是毋庸置疑的。它们体现了类和类之间或者类和接口之间的垂直关系。其他四种关系反映的是类和类之间,或者类和接口之间的引用和横向关系,很难区分。事物之间有很多关系,很难准备和定位。如前所述,这些关系都是在语义层面,所以我们无法从代码层面完全区分。但一般来说,后一种关系的强度如下:结合、聚合、相关和依赖;

  本文来自http://blog.csdn.net/sfdev/archive/2009/02/18/3906243.aspx. CSDN博客,转载请注明出处

  转载了几个:

  http://www.uml.org.cn/UMLApplication/UMLApplication29.htm?columnID=294 articleID=28877 pageNO=1

  http://jiang2008.iteye.com/blog/679390

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: