php 适配器模式

一,适配器模式,属于结构设计模式的一种,用于将一个类的接口转换成客户期望的接口。

1,目标接口(Target Interface):是客户期望的接口,定义了客户要调用的方法。

2,适配器类(Adapter Class):实现了目标接口,并将其方法转发到被适配者。适配器类可以是类适配器(通过继承被适配者实现)或者对象适配器(组合实现,传递被适配者类)

3,被适配者(Adaptee):需要被适配到目标接口的类

二,对象适配器的简单例子

php 复制代码
//目标接口
Interface Target{
    public function getName();
}
//被适配者
class Adaptee{

    public function getUserInfo(){
        echo '姓名:张三';
    }
}
//适配器
class Adapter implements Target{
    private $adaptee;
    function __construct(Adaptee $adaptee){
        $this->adaptee=$adaptee;
    }
    public function getName(){
        $this->adaptee->getUserInfo();
    }
}
//客户端调用
$adapteeObj=new Adaptee();
$adapterObj=new Adapter($adapteeObj);
$adapterObj->getName();//姓名:张三

适配器模式可以帮助你在修改原有代码的同时,使得旧的类和新的代码能够兼容工作。这样可以实现代码的复用和灵活性。

相关推荐
yyueshen31 分钟前
单例模式,有必要用volatile么?
java·单例模式·设计模式
千益1 小时前
玩转python:系统设计模式在Python项目中的应用
python·设计模式
木胭脂沾染了灰2 小时前
策略设计模式-下单
java·前端·设计模式
Goober Airy2 小时前
PHP:格式化JSON为PHP语法格式
开发语言·php
Forget the Dream4 小时前
设计模式之迭代器模式
java·c++·设计模式·迭代器模式
周努力.4 小时前
设计模式之单例模式
单例模式·设计模式
大丈夫在世当日食一鲲4 小时前
Java中用到的设计模式
java·开发语言·设计模式
怪力乌龟5 小时前
go语言设计模式-适配器模式
设计模式·golang·适配器模式
嵌入式悦翔园6 小时前
嵌入式设备的功能安全和信息安全?
网络·安全·php
木卯6 小时前
5种创建型设计模式笔记(Python实现)
python·设计模式