zoukankan      html  css  js  c++  java
  • 设计模式(六):适配器模式

    优点:

      ① 通过引入一个适配器Adapter来重用现有的不兼容的旧类Adeptee,而无需修改旧类原有结构。

      ② 增加了旧类的复用性;适配器的灵活性和扩展性都非常好

    缺点:

      ① 一次最多只能适配一个旧类,不能同时适配多个旧类。

    适用范围:需要有旧类,而旧类的接口不符合新系统的需要,甚至旧类都没有源代码

      

    客户端:  

      Player b = new ForWards("巴蒂尔");
      b.attack();  // 进攻命令(英文)

      //作废
      // Player y = new Center("姚明");
      // y.attack();

      Player ym = new Translator("姚明");  //适配器,此处相当于翻译
      ym.attack();  // 进攻命令(已适配为中文)

    一句话概括:如同一个电源适配器,不论什么电压,只要经过适配器,都能变成适合的220V

        /**
         * Player                     (进攻、防守抽象方法)
         * ForWords  Center  Guards   (实例化Player接口)  -- 本国队员
         * 
         * ForeignCenter (旧类,没有实现Player接口,但包含有类似的进攻、防守的方法)  --  外国队员
         * 
         * Translator (适配器,同样实例化Player接口,然后将旧类属性及方法放入此适配器,用来代替旧类)  --  本国队员(已转化)
         */
  • 相关阅读:
    数据结构与算法--绪论
    Django之模板(T)
    博客园之MD文件代码块添加隐藏/显示按钮
    博客园之背景特效
    博客园之生成侧边目录
    占位先1
    Django之视图(V)
    Django之ORM
    Django框架
    tomcat在centos下启动缓慢,耗时较长
  • 原文地址:https://www.cnblogs.com/shushengyou/p/10220823.html
Copyright © 2011-2022 走看看