• 适配器模式(Adapter Pattern)


      最近在学习设计模式,看了一些有关的书和博客,有了一点理解。算是自我的小总结,抛砖引玉,希望可以给大家一些启发。

      简单地说,适配器模式将某个对象的接口适配为另一个对象所期望的接口

      小例子:我们知道,电厂供电标准电压220V,而我们的许多用电设备并不仅限于220V,这时候,适配变压器成了一个伟大的发明。通过适配变压,使得电压可以适合任何设备的供电。同理,适配器模式可以这样简单的理解:当我们在调用已有的类库或者某些功能服务时,可以经过适配器类的处理,使得在原有功能更加特殊化、适用某一类对象。

    1.类的Adapter UML图 
                    
    类结构图:
                            

      代码:

     1 interface AllPower{
     2     function GetPower();
     3 }
     4 // 220V电源类;
     5 class Power{
     6 // 从电源中得到220V的电压;
     7     function GetPower220V(){
     8     }
     9 }
    10 // 适配器类(充电器);
    11 class Adapter extends Power implements AllPower{
    12 // 得到想要电压;
    13  function GetPower(){
    14     this->GetPower220V();
    15       echo("得到设备的额定电压!");
    16    }
    17 }
    18 class Equip{
    19  // 这里相当于是设备;
    20     function a(){
    21         $Target = new Adapter();
    22         $b=$Target->GetPower();
    23         echo "设备:".$b;
    24      }
    25 } 

    在ZendFrame work中,链接Mysql数据库时,运用Adapter拿到适配器实现数据库连接。

    参考博客:http://www.cnblogs.com/houleixx/archive/2008/03/04/1090214.html

    参考书籍:《PHP设计模式》Aaron Aaray  http://book.douban.com/subject/4865086/

  • 相关阅读:
    git简单使用
    简单Spring和mybatis整合配置文件
    ASP.NET程序开发范例宝典
    C# DataSet和DataTable详解
    AOP
    匿名内部类
    数据库事务
    mybatis
    线程池
    单例模式
  • 原文地址:https://www.cnblogs.com/dongsh/p/3209582.html
Copyright © 2020-2023  润新知