//策略模式
//1.去上班選擇交通工具
//去上班的接口
interface work{
public function go();
}
//通過坐地鐵
class subway implements work{
public function go(){
echo 'subway go work'."<br/>";
}
}
//通過公交
class bus implements work{
public function go(){
echo 'bus go work'."<br/>";
}
}
//通過騎車
class bike implements work{
public function go(){
echo 'bike go work'."<br/>";
}
}
//通過開車
class car implements work{
public function go(){
echo 'car go work'."<br/>";
}
}
//請求的方法
class gowork{
public $way='';
private $item;
public function __construct($way){
$this->way=$way;
//反射類 通過類名稱去實例化類
$class=new ReflectionClass($this->way);
$this->item=$class->newInstance();
}
public function go(){
//請求該類下的方法
$this->item->go();
}
}
//這裏必須知道有哪幾種策略
$re=new gowork("car");
$re->go();
php設計模式之策略模式
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.