Effective Java 第二版 中文版 笔记(十五)复合优于继承

废话不多直接看代码

继承:

public class A { 
    public void geta() { 
     //a的方法  
    } 
} 

public class B extends A { 
    @Override 
    public void geta() {
        //b的方法
    } 
} 

复合:

public class B { 
    private A a; 
    public B (A a) { 
        this.a = a; 
    } 
    public void fuhe(){ 
        B b = new B(new A()); 
        b.geta(); 

    } 
} 

以上是继承和复合的实例,

复合:主要是指类中含有需要调用的对象的实体,通过对象,调用对象的方法;

官方话。。。在新的类中增加与个私有的域,它引用现有类的一个实例,这种设计被称为复合

猜你喜欢

转载自blog.csdn.net/qq_37538698/article/details/82689848