JAVA設計模式 Bridge

2021-05-24 08:18:50 字數 528 閱讀 2554

個人認為bridge模式是用在對於分類的組合上的,舉個例子,在大學裡發獎學金,就拿川大來說,一共是32個學院,銀行卡有建行、工行、中行和農行,那麼發放方式就有計算機學院+工行、計算機學院+建行、數學學院+建行、數學學院+中行等32 x 4=128種方式。一般來說,就需要128個子類來實現發放獎學金這個功能,如果招商銀行又加到銀行裡面來,那麼我們就還得寫32個類,這樣太過於複雜了。因此我們必須想乙個辦法來解決這個問題,於是就用到了bridge模式。對於這個模式來說一共只需要32+4(不是32 x 4)個類就行了,當招商銀行想要加進來時,只需要加1個類,而不是32個。下面就來看看**:

個人認為,bridge模式的核心就是組合,把描述乙個事物的各個維度用組合的方式放在乙個基礎的維裡面,這樣就不必生成m*n*l... 這麼多個子類,另外就是需要保證當某乙個維度的長度變長的時候不能更改其它類。總結起來就是兩點:

1.把描述乙個事物的所有維度放在乙個類裡面;

2.在某個或者某些維度的長度增加或者減少或者改變時,不能更改原有的類。

滿足了上面兩個條件,也就實現了bridge模式。

設計模式 Bridge模式

原來對bridge模式理解不是很深入,感覺和build模式很相似,今天又看了四人幫的關於bridge模式的描述,有些新的理解 先來說下適用性 1 不想抽象和實現之間有乙個固定的繫結關係。因為程式在執行時實現部分可以被選擇或者切換 2 類的抽象以及它的實現都應該可以通過生成子類的方法加以擴充。這時br...

設計模式之Bridge模式

本文內容是通過學習 設計模式解析 by alan shalloway,james r.trott 一書所總結的心得。博主想通過先提出問題,再解決問題的方式來讓讀者實際體驗一把bridge模式的優勢。這也是 設計模式解析 一書中採用的講解流程,對於讀者理解會有很大幫助 文中的案例也是使用的書中提供的案...

設計模式之Bridge

bridge定義 將抽象和行為劃分開來,各自獨立,但能動態的結合.為什麼使用?通常,當乙個抽象類或介面有多個具體實現 concrete subclass 這些concrete之間關係可能有以下兩種 1.這多個具體實現之間恰好是並列的,如前面舉例,打樁,有兩個concrete class 方形樁和圓形...