<?php
/**
* 桥接模式
*/
/**抽象化角色
*/
abstract class AbstractRoad
{
abstract function Run(ICar $car);
}
/**
* 速公路
*/
class SpeedRoad extends AbstractRoad
{
function Run(ICar $car)
{
$car->Run();
echo ":在高速公路上。";
}
}
/**
* 乡村街道
*/
class Street extends AbstractRoad
{
function Run(ICar $car)
{
$car->Run();
echo ":在乡村街道上。";
}
}
/**
* 抽象汽车接口
*/
interface ICar
{
function Run();
}
/**
* 吉普车
*/
class Jeep implements ICar
{
function Run()
{
echo "吉普车跑";
}
}
/**
* 小汽车
*/
class Car implements ICar
{
function Run()
{
echo "小汽车跑";
}
}
//吉普车跑:在高速公路上。
$obj=new SpeedRoad();
$obj->Run(new Jeep());
/*
* 可参考:http://blog.csdn.net/jhq0113/article/details/45441793
*/
网友评论