php設計模式之策略模式

//策略模式
//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();

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章