zoukankan      html  css  js  c++  java
  • 设计模式之GOF23适配器模式

    结构型模式

    核心作用:是从程序的结构上实现松耦合,从而可以扩大整体的 类结构,用来解决更大的问题

    适配器模式adapter

    实际生活中的例子:转换器

    适配器的两种方式:

    1,类适配器(继承)

    /**需要适配的对象
     * @author 小帆敲代码
     *
     */
    public class Adaptee {
      public void request() {
       System.out.println("can do something");
      }
    }

    /**
     *适配器(类适配器)
     * @author 小帆敲代码
     *
     */
    public class Adapter extends Adaptee implements Target {
     @Override
     public void handleReq() {
       super.request();
     }
    }
    /**
     * 客户端
     * @author 小帆敲代码
     *
     */
    public class Client {
      public void test(Target t) {
       t.handleReq();
      }
      public static void main(String[] args) {
       Client c=new Client();
       Target t=new Adapter();
       c.test(t);
      }
    }
    public interface Target {
      public void handleReq();
    }
    2,对象适配器(组合)
    /**需要适配的对象
     * @author 小帆敲代码
     *
     */
    public class Adaptee {
      public void request() {
       System.out.println("can do something");
      }
    }
    /**
     *适配器(对象适配器)
     * @author 小帆敲代码
     *
     */
    public class Adapter2 extends Adaptee implements Target {
     private Adaptee a;
     @Override
     public void handleReq() {
       a.request();
     }
     public Adapter2() {
      
     }
     public Adapter2(Adaptee a) {
      this.a=a;
     }
    }
    public class Client2 {
     public void test(Target t) {
      t.handleReq();
     }
     public static void main(String[] args) {
      Client c=new Client();
      Adaptee a=new Adaptee();
      Target t=new Adapter2(a);
      c.test(t);
     }
    }
    public interface Target {
      public void handleReq();
    }
  • 相关阅读:
    实例
    LR接口测试---webservices
    LR常用函数整理
    Codeforces Round #639 (Div. 2) A. Puzzle Pieces
    Codeforces Round #640 (Div. 4)全部七题
    POJ3177 Redundant Paths(e-DCC+缩点)
    洛谷P3469 [POI2008]BLO-Blockade(割点)
    洛谷P3275 [SCOI2011]糖果(缩点+拓扑序DP)
    POJ1236 Network of Schools(强连通分量)
    P3387 【模板】缩点(Tarjan求强连通分量)
  • 原文地址:https://www.cnblogs.com/code-fun/p/11330513.html
Copyright © 2011-2022 走看看