Java 类之间的关系

总述

类和类之间的关系,耦合度从高到低:

  • is 。继承、实现
  • has 。组合、聚合、关联
  • use 。依赖。

要求是:高内聚、低耦合。

继承

Person 和 Man之间是继承关系。

实现

组合

public class Person {
    // Person和Heart之间是组合
    private Heart h;
    public Person(){
        h=new Heart();
    }
}

特征是:要在构造方法中创建对象

聚合

public class Car {
    //聚合
    private Engine e;
    public Car(Engine e){
        this.e = e;
    }
}

聚合的特点是:有这个属性,且要在构造方法中使用,但不是在构造方法中创建的。

注意和组合的差别:两者的创建时机不同,组合是在Person创建的时候,被创建的。聚合是可以在别的创建的。

关联

public class Person {
    // Person 和Car之间是关联关系
    private Car c;
    public void setC(Car c){
        this.c=c;
    }
}

特点是:不是在构造方法中设置的。

依赖

public class Person {
    // 使用-依赖
    public void traval(Train t){
    }
}

特点是:要在普通方法中使用。

猜你喜欢

转载自www.cnblogs.com/heenhui2016/p/10963242.html