23种设计模式-适配器模式与策略模式的区别

策略模式:方法的形参为接口对象,实参为接口的实现类

适配器模式:在适配器中定义适配者来辅助实现接口

相似点:都是通过找到已经存在的、运行良好的类来实现接口

不同点:

策略模式 所有的策略都需要暴露出去,由客户端决定使用哪一个策略。

而适配器模式是定义好接口的实现方式以及内部需要引用的类,客户端直接调用适配器的方法

 

然后以下是简单的模式设计代码:

策略模式 :

23种设计模式-适配器模式与策略模式的区别_第1张图片

23种设计模式-适配器模式与策略模式的区别_第2张图片

23种设计模式-适配器模式与策略模式的区别_第3张图片

23种设计模式-适配器模式与策略模式的区别_第4张图片

适配器模式:

public class Adaptee {

              public void adapteeRequest() {

                          System.out.println("被适配者的方法");

               }

}

public interface Target {

                       void request();

}

public class Adapter extends Adaptee implements Target{
    @Override
    public void request() {
        //...一些操作
        super.adapteeRequest();      //super调用的是extends
        //...一些操作
    }
}
 

 

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