php 桥接模式

一,桥接模式,是结构设计模式的一种,其将抽象部分和实现部分分离开来,使两部分可以独立的进行修改,提高系统的灵活性。在桥接模式中,需要定义一个抽象类和一个实现类,通过将实现类注入到抽象类中,来实现两者的解耦合。

二,简单例子

// 实现类接口
Interface People{
    public function setName();
}
//具体实现类
class Man implements People{
    public function setName(){
        echo '我是张三';
    }
}
class Woman implements People{
    public function setName(){
        echo '我是珍妮';
    }
}
//抽象类
abstract class Abstraction{
    public $instance;
    function __construct(People $instance){
        $this->instance=$instance;
    }
    abstract public function get();
}
//具体抽象类
class Concrete extends Abstraction{
    public function get(){
        $this->instance->setName();
    }
}
//客户端调用

$concrete=new Concrete(new Man());
$concrete->get()//我是张三