UML之类与类之间的关系

java类之间的关系有,继承、实现、依赖,关联、聚合和组合。

           1、继承体现在代码层面就为extends,可以是一个类继承另外一个类,或者为一个接口继承一个借口。UML类图如下图所示

           

          2、实现关系体现在代码层面为implements,是一个类实现一个借口,UML类图

               

          3、依赖关系,例如A类依赖B类,这种关系是偶尔性、临时性和非常弱的,但是B的变化会影响到A类,表现到代码层面为类B作为参数被类A中的某个method使用。类图如图所示

           

         4、关联关系,关联这种关系不是偶尔的、零时的,是一种长久的关系,这种依赖比依赖强,变现到代码层面,关联类B以类的属性出现在关联类A中,或者类A引用了被关联类B的全局变量。

          

        5、聚合关系,聚合关系是一种特殊的关联关系,他体现的整体与部分,即has-a关系。此时整合和部分是可以分离的,他们各自有各自的生命周期。表现在代码层面,和关联关系一样,只能从语义层面区分。例如,小贝是一个球队的一部分,但是他也可以是其他球队的一部分。

           

       6、组合关系,组合关系也是一种特殊的关联关系,他体现了contain-a的关系。这种关系比聚合关系更强,也称为强聚合。他同样是一种部分与整体的关系,只不过部分和整体是不可分的,整体部分生命周期的结束,也意味着部分生命周期的结束。表现在代码层面,和关联关系一样,只能从语义层面区分。例如小贝的飞毛腿就是组合关系。

              

             参考:http://www.cnblogs.com/liuling/archive/2013/05/03/classrelation.html

猜你喜欢

转载自chenghao666.iteye.com/blog/2367242