PHP设计模式–适配器模式

PHP jason 343℃ 0评论

适配器模式:
适配器模式(Adapter)模式:将一个类的接口,转换成客户期望的另一个类的接口。适配器让原本接口不兼容的类可以合作无间。
目标(Target)角色:定义客户端使用的与特定领域相关的接口,这也就是我们所期待得到的
源(Adaptee)角色:需要进行适配的接口
适配器(Adapter)角色:对Adaptee的接口与Target接口进行适配;适配器是本模式的核心,适配器把源接口转换成目标接口,此角色为具体类。
其实也就是你家墙上有一个两口的插座(Adaptee),但你买了一个电风扇(Target)需要三个口的,这个时候你就需要一个插排(Adapter)。
下面以 提供一个适配器类,把220V的用电转换成人体所能承受的36V的安全电压为例。


/** 电压接口     
 *  interface Voltage         
 */  
interface Voltage  
{  
    function Display(); // 电压显示  
}  
  
/** 家用电压类   
 *  HomeVoltage        
 */  
Class HomeVoltage implements voltage  
{  
    // 家用电压一般220V  
    function Display(){  
        echo "220V";  
    }     
}  
  
/** 人体安全电压   
 *  PersonVoltage       
 */  
Class PersonVoltage  
{     
    // 人体安全电压一般不超过36V  
    function Display(){  
        $v = rand(1,36);  
        echo $v."V";  
    }     
}  
  
/** 适配器类  
 *  Adapter      
 */  
Class Adapter implements Voltage  
{  
    private $_person;  
    // __construct 构造函数重新进行转换  
    function __construct(){  
        $this->_person = new PersonVoltage();  
    }  
    function Display(){  
        $this->_person->Display();  
    }   
}  


// 家用电压    
$home = new HomeVoltage();   
$home->Display();  
  
echo "*********转换电压到人体安全电压**********
"; // 适配器 随机转换到人体可接受范围电压 $person = new Adapter(); $person->Display();

转载请注明:Jason博客 » PHP设计模式–适配器模式

喜欢 (2)or分享 (0)
发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

记载着一个程序员的编码历程