hi,雖然這類問題網(wǎng)上也有大量的解答,不過我感覺我的這個(gè)問題有點(diǎn)特殊,也可能是我腦子轉(zhuǎn)不過來,想在這里提一下。假設(shè)有兩個(gè)類class a和b,結(jié)構(gòu)如下:class a{
}class b{ public $a; public function attach($a){ $this->a = $a;
} public function destroy(){ if($this->a !== null){ //do something
}else{ //do something
}
}
}這里class b的銷毀需要根據(jù)class a是否綁定在class b上,但是問題是這樣的關(guān)系還有很多,可能銷毀b先讓a與b解綁,但是解綁a、b的前提是需要解綁a、c諸如此類的關(guān)系;我在網(wǎng)上有看到狀態(tài)模式,因?yàn)楂@得狀態(tài)也是先根據(jù)現(xiàn)有條件判斷。所以我想是否有更好的設(shè)計(jì)模式或者數(shù)據(jù)結(jié)構(gòu)來表示這種綁定關(guān)系,來替代方法中if-else的判斷呢,謝謝!
添加回答
舉報(bào)
0/150
提交
取消