服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - PHP教程 - php设计模式 Bridge (桥接模式)

php设计模式 Bridge (桥接模式)

2019-12-01 12:40PHP教程网 PHP教程

将抽象部份与它实现部分分离,使用它们都可以有独立的变化

代码如下:


<?php 
/** 
* 桥接模式 

* 将抽象部份与它实现部分分离,使用它们都可以有独立的变化 
*/ 
abstract class Implementor 

abstract public function operation(); 

class ConcreteImplementorA extends Implementor 

public function operation() 

echo "ConcreteImplementorA Operation<br/>"; 


class ConcreteImplementorB extends Implementor 

public function operation() 

echo "ConcreteImplementorB Operation<br/>"; 


class Abstraction 

protected $_implementor = null; 
public function setImplementor($implementor) 

$this->_implementor = $implementor; 

public function operation() 

$this->_implementor->operation(); 


class RefinedAbstraction extends Abstraction 


class ExampleAbstraction extends Abstraction 


// 
$objRAbstraction = new RefinedAbstraction(); 
$objRAbstraction->setImplementor(new ConcreteImplementorB()); 
$objRAbstraction->operation(); 
$objRAbstraction->setImplementor(new ConcreteImplementorA()); 
$objRAbstraction->operation(); 
$objEAbstraction = new ExampleAbstraction(); 
$objEAbstraction->setImplementor(new ConcreteImplementorB()); 
$objEAbstraction->operation(); 

延伸 · 阅读

精彩推荐