//文件名CelueService.php
//定義接口,衣服下有褲子、鞋子
interface Yifu
{
public function kuzi();
public function xiezi();
}
//淘寶褲子、鞋子
class Taobao implements Yifu
{
public function kuzi()
{
echo "toabao---kuzi";
}
public function xiezi()
{
echo "taobao---xiezi";
}
}
//京東褲子、鞋子
class Jingdong implements Yifu
{
public function kuzi()
{
echo "jingdong---kuzi";
}
public function xiezi()
{
echo "jingdong---xiezi";
}
}
class CelueService
{
private $obj;
//方式1:
public function __construct(Yifu $yifu)
{
$this->obj = $yifu;
}
// //方式2
// public function __construct($method)
// {
// $temp = new \ReflectionClass($method);
// $this->obj = $temp->newInstance();
// }
public function total_kuzi()
{
$this->obj->kuzi();
}
public function total_xiezi()
{
$this->obj->xiezi();
}
}
$obj = new CelueService(new Taobao());//需要京東就傳new Jingdong()
$obj->total_xiezi();
PHP策略模式之簡單使用
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
相關(guān)閱讀更多精彩內(nèi)容
- 簡介 策略模式:定義了一系列的算法族,每一個(gè)算法都實(shí)現(xiàn)了接口的需要處理的方法,算法族可以互換。Context類是使...
- 練習(xí):使用裝飾器優(yōu)化一等函數(shù)實(shí)現(xiàn)策略 我們可以實(shí)現(xiàn): 商品點(diǎn)單 使用“策略”模式實(shí)現(xiàn)折扣,并利用裝飾器Promo ...
- 最近看同事的代碼時(shí)候,學(xué)到了個(gè)小技巧,在某些場景下非常挺有用的,這里分享一下給大家。 Spring 中 @Auto...
- 策略模式 策略模式: 定義一組算法,將每一個(gè)算法封裝到具有共同接口的獨(dú)立類中,從而使得各個(gè)算法之間可以相互替換策略...