设计模式------适配器

//适配器模式不适合在系统设计阶段采用,没有一个系统分析师会在做详细设计的时候考虑使用适配器模式,这个模式使用的主要场景是扩展应用,不符合原有设计的时候才考虑通过适配器模式减少代码修改带来的风险

//语义:如果有两个相似的类,这两个类已经写好了,但是我有某种需求,想让其中一个类拥有和另外一个类相同的接口,你可以改源代码使得这两个类统一起来,或者使用适配器。。。head first 说:适配器的目的是----将一个接口转换成另外一个接口

//两个已经存在的类

public interface Duck{
  public void quack();
  public void fly();
}

public class MallardDuck implements Duck{
    public void quack(){
      //~~~~
    }
    public void fly(){
       //~~~~
    }
}

//``````````````
public interface Turkey{
     public void gobble();
     public void fly();
}

public class WildTurkey implements Turkey{
     public void gobble(){
       //~~~~
     }
    
     public void fly(){
       //~~~
     }
}

//~~~~不用修改火鸡代码,也能使得火鸡和鸭子接口统一哦
public class TurkeyAdapter implements Duck{
     Turkey turkey;
     public TurkeyAdapter(Turkey turkey){
        this.turkey = turkey;
     }
     public void quack(){
        turkey.gobble();
     }

     public void fly(){
        for(int i=0;i<5;i++){
           turkey.fly();
        }
     }
}

//Java中的适配器。。。迭代器类。。。。

你可能感兴趣的:(设计模式)