标签:blog http io ar div on log cti bs
<?php
/*桥接模式:将抽象部分与实现部分分离,使它们都可以独立的变化。
*
* 在软件系统中,某些类型由于自身的逻辑,它具有两个或多个维度的变化,桥接模式就是应对这种多维度的变化
*/
/*例子:不同的车在不同的街道上行驶。车可变,街道可变
*
*
*/
abstract class road{
abstract public function run();
}
class quickroad extends road{
public $car;
public function __construct($car){
$this->car = $car;
}
public function run(){
$this->car->run();
echo ‘高速公路上行驶‘;
}
}
class street extends road{
public $car;
public function __construct($car){
$this->car = $car;
}
public function run(){
$this->car->run();
echo ‘城市街道上行驶‘;
}
}
abstract class car{
abstract public function run();
}
class jeep extends car{
public function run(){
echo ‘吉普车在‘;
}
}
class bus extends car{
public function run(){
echo ‘公共汽车在‘;
}
}
$car = new bus();
$road = new quickroad($car);
$road->run();
echo "<br/>";
$car = new jeep();
$road = new street($car);
$road->run();
?>
UML类图

标签:blog http io ar div on log cti bs
原文地址:http://www.cnblogs.com/taijun/p/4075736.html