橋梁模式的用意是:将抽象化和實作化驚醒脫耦,使得兩者可以獨立的變化。所謂脫耦就是将抽象化和實作化之間的耦合解脫開,也就是強關聯變成若關聯。
強關聯就是在編譯期就已經确立的,無法在運作時改變;弱關聯就是可以動态的确定并且運作期可以改變的關聯。繼承是強關聯,合成、聚合是弱關聯。
類圖:
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsIyZwpmLwEjM4kDM4UTO1gDM0ADMxgTMwIzLcZDM0EDMy8CXvZmbp9CXt92YuUGZvNWatFWbuU2Zh1Wavw1LcpDc0RHaiojIsJye.jpg)
示意性代碼:
在網上看到一個例子解釋這個的,我覺得蠻好的,mark一下:
《java與模式》裡面,講到的jdbc驅動器的例子。drivermanager根據url(定義響應的資料庫的url)得到具體的實作。