标签:inter eth 重构 highlight +++ 角色 输出 模式 IV
这种模式允许使用不同的接口重构某个类,可以允许使用不同的调用方式进行调用:
<?php /** * 第一种方式:对象适配器 */ interface Target { public function sampleMethod1(); public function sampleMethod2(); } class Adaptee { public function sampleMethod1() { echo ‘++++++++‘; } } class Adapter implements Target { private $_adaptee; public function __construct(Adaptee $adaptee) { $this->_adaptee = $adaptee; } public function sampleMethod1() { $this->_adaptee->sampleMethod1(); } public function sampleMethod2() { echo ‘————————‘; } } $adapter = new Adapter(new Adaptee()); $adapter->sampleMethod1();//输出:++++++++ $adapter->sampleMethod2();//输出:———————— /** * 第二种方式:类适配器 */ interface Target2 { public function sampleMethod1(); public function sampleMethod2(); } class Adaptee2 { // 源角色 public function sampleMethod1() {echo ‘++++++++‘;} } class Adapter2 extends Adaptee2 implements Target2 { // 适配后角色 public function sampleMethod2() {echo ‘————————‘;} } $adapter = new Adapter2(); $adapter->sampleMethod1();//输出:++++++++ $adapter->sampleMethod2();//输出:———————— ?>
标签:inter eth 重构 highlight +++ 角色 输出 模式 IV
原文地址:https://www.cnblogs.com/taozi32/p/9226510.html