PHP策略模式

<?php
abstract class strategy{
abstract function use();
}
class StrategyA extends strategy{
public function use(){
echo "這是使用策略的方法
";
}
}
class StrategyB extends strategy{
public function use(){
echo "這是使用策略的方法
";
}
}

class context{
protected $strategy;
public function setStrategy(strategy $strategy){
$this->strategy = $strategy;
}
public function use(){
$this->strategy->use();
}

}
$context = new context();
$StrategyA = new StrategyA();
$StrategyB = new StrategyB();

$context->setStrategy($StrategyA);
$context->use();
$context->setStrategy($StrategyB);

$context->use();

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容