1、Bridge模式簡介
所謂Bridge就是連接兩處的通道。
《設計模式》一書對Bridge模式的意圖是這樣敘述的:
“將抽象與實現解耦,使它們都可以獨立地變化。”
2、Bridge模式關鍵特徵
意圖 |
將一組實現與另一組使用它們的對象分離。 |
問題 |
一個抽象類的派生類必須使用多個實現,但不能出現類數量爆炸性增長 |
解決方案 |
爲所有實現定義一個接口,供抽象類的所有派生類使用。 |
參與者與協作者 |
Abstraction爲要實現的對象定義接口,Implementor爲具體的實現類定義接口。Abstraction的派生類使用Implementor的派生類,卻無需知道自己具體使用哪一個ConcreteImplementor。 |
效果 |
實現與使用實現的對象解耦,提供了可擴展性,客戶對象無需操心實現問題。 |
實現 |
1、 將實現封裝在一個抽象類中; 2、 在要實現的抽象類的基類中包含一個實現的句柄。 |