Copy CodeThe code is as follows:
/**
* Bridging mode
*
* Separate the abstract part from its implementation and use them to change independently
*/
Abstract class Implementor
{
Abstract public function operation ();
}
Class Concreteimplementora extends Implementor
{
Public Function operation ()
{
echo "Concreteimplementora operation
";
}
}
Class Concreteimplementorb extends Implementor
{
Public Function operation ()
{
echo "Concreteimplementorb operation
";
}
}
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 ();
http://www.bkjia.com/PHPjc/323618.html www.bkjia.com true http://www.bkjia.com/PHPjc/323618.html techarticle Copy the code as follows:? PHP/** * Bridging mode * * Separate the abstract part from its implementation and use them to change independently * * Abstract class Implementor {abstract Publ ...