首页 > 代码库 > 面向对象中常见的关系理解

面向对象中常见的关系理解

  1. 面向对象有几种关系

    泛化和实现

    关联和依赖

    1. 关系理解

      泛化:就是继承                        实线带三角形

      实现:就是实现接口                虚线带三角型

      关联:分为三种,单向关联,双向关联和自身关联。实线

      双向关联:这意味着,两个类彼此知道它们间的关系。从代码级别上看,就是A类里存在对B类的属性应用,B类里也存在着对A类的应用

      单向关联:在一个单向关联当中,两个类是相关的,但是只有一个类知道这种联系的存在。从代码级别上看,就是A类对象对B类对象的属性应用,但B类里没有A类的应用。

      自身关联(反射关联)。当一个类关联到它本身时,这并不意味着类的实例与它本身相关,而是类的一个实例与类的另一个实例相关。

      什么是聚合:聚合关系是一种特殊的关联关系。是一个类引用了另外一个类。但是其表示一个明确的整体和部分的关系。是一种has-a关系。但聚合所表示的整体与部分,没有必然的生命周期联系。整体的创建不一定会引起部分的关键,整体的消失,也不一定会让部分全部消失,比如篮球队和篮球队员,电脑和键盘的关系。

      上代码:

      class Computer{

      private KeyBoard board//整体的创建,并不一定会部分创建。

      }

      什么是组合:整体的创建必须要伴随其相关联部分的创建,整体的销毁也将会引起部分的全部销毁。

      上代码:

      class Motor{

      ArrayList dogs=new ArrayList()//同时创建,同时销毁。

      }

      依赖:一个事物的变化会影响到另外一个事务。

      主要有3种形式,一种是方法的返回参数的类型是依赖这个类;一种是方法的形参是依赖这个类;另一种是依赖这个方法里面的对象。                    虚线带箭头

 

 

本文出自 “简答生活” 博客,谢绝转载!

面向对象中常见的关系理解