摘要:适配器模式将一个类的接口转换成客户希望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些类可以在一起工作。如下待适配对象电子书翻页电子书打开客户端测试输出结果电子书打开电子书翻页
适配器模式:将一个类的接口转换成客户希望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些类可以在一起工作。
先来看一个案例:// 书接口 interface BookInterface { // 翻页方法 public function turnPage(); // 打开书方法 public function open(); }
// 纸质书实现类 class Book implements BookInterface { public function turnPage() { echo "纸质书翻页". "
"; } public function open() { echo "纸质书打开". "
"; } }
// 客户端测试 $book = new Book(); $book->open(); $book->turnPage();
纸质书打开 纸质书翻页这时候,你想创建一个可以复用的类,该类可以与其他不相关的类或不可预见的类(即那些接口可能不一定兼容的类)协同工作。如下:
// 待适配对象 class Kindle { public function turnPage() { echo "电子书翻页". "
"; } public function open() { echo "电子书打开". "
"; } }
class KindleAdapter implements BookInterface { protected $_kindle; public function __construct($obj) { $this->_kindle = $obj; } public function turnPage() { $this->_kindle->turnPage(); } public function open() { $this->_kindle->open(); } }
$kindle = new KindleAdapter(new Kindle()); $kindle->open(); $kindle->turnPage();
电子书打开 电子书翻页
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/29538.html
摘要:原文地址设计模式十适配器模式在设计模式七设计模式分类中我们提到过结构设计模式,结构设计模式专注于设计对象和实例的构建组合过程。适配器模式在不修改现有代码的基础上,保留了架构。 原文地址:PHP设计模式(十):适配器模式 Introduction 在PHP设计模式(七):设计模式分类中我们提到过结构设计模式(Structural patterns),结构设计模式专注于设计对象(Objec...
摘要:大佬看完如果发现鄙人理解有误请立即指出,感谢拍砖,跪求鞭打适配器模式来自说明通过适配器模式能够使用新的代码和功能性来帮助更新原有的系统。 整理一下自己的学习Aaron Saray 写的PHP设计模式一些demo和自己的理解。大佬看完如果发现鄙人理解有误请立即指出,感谢拍砖,跪求鞭打 /** * Adapter 适配器模式 * ---------------------------...
摘要:大佬看完如果发现鄙人理解有误请立即指出,感谢拍砖,跪求鞭打适配器模式来自说明通过适配器模式能够使用新的代码和功能性来帮助更新原有的系统。 整理一下自己的学习Aaron Saray 写的PHP设计模式一些demo和自己的理解。大佬看完如果发现鄙人理解有误请立即指出,感谢拍砖,跪求鞭打 /** * Adapter 适配器模式 * ---------------------------...
阅读 3646·2021-09-22 15:49
阅读 3257·2021-09-08 09:35
阅读 1401·2019-08-30 15:55
阅读 2255·2019-08-30 15:44
阅读 673·2019-08-29 16:59
阅读 1562·2019-08-29 16:16
阅读 435·2019-08-28 18:06
阅读 860·2019-08-27 10:55