9 設計模式 橋接模式

2021-10-25 06:47:32 字數 1280 閱讀 4993

所謂橋接模式即為搭建中間關係的一種模式。舉個網上比較流行的例子。如果我們要畫一種畫,需要大中小三種筆,紅,藍,黃,綠,紫五種顏色。那如果我是準備彩筆的話,我得準備多少支筆呢?我得準備3*5=15種吧。也就是大的需要準備五種顏色的筆,中的也要準備五種顏色的筆,小的也要準備五種顏色的筆。但如果我用毛筆+墨硯呢?那只需要3支筆,5種顏色的墨硯,我大的畫完一種顏色,洗了,又塗抹另外一種顏色畫。這樣就只需要3+5=8個材料。造成第一種需要15中材料的原因是什麼呢?就是因為筆本身和顏色本身耦合在一起了。這個在**中就說明了類和其實現的功能耦合在一起了。那麼為了解耦,我們只需要進行乙個引用,就達到了拆分的目的。

public

inte***ce

color

public

class

greencolor

implements

color

}

public

class

blackcolor

implements

color

}

public

class

redcolor

implements

color

}

在抽象類裡面引用顏色介面,供實現類不同的呼叫方法。

public

abstract

class

penpublic

abstract

void

draw()

;}

public

class

bigpen

extends

pen}

public

class

midpen

extends

pen}

public

class

smallpen

extends

pen}

public

class

maintest

}

我是一支大筆

我能畫紅色...

....

....

....

..我是一支大筆

我能畫黑色

設計模式 橋接模式

橋接模式 多維 如車行駛在路上。車分各種品牌 各種型號各種排氣 道路分街道 告訴 山地等 駕駛員分男女 為了減少類的數量。如果按照繼承實現會照成大量冗餘的類,類的數量會相當之大 package com.cn.duduyu.bridgepattern.car public abstract class...

設計模式 橋接模式

設計模式 橋接模式 橋接模式 bridge pattern 對應英文名稱可以是bridge或者bradge任意一種都可以。在軟體系統中,某些型別由於自身的邏輯,它具有兩個或多個維度的變化,那麼如何應對這種 多維度的變化 如何利用物件導向的技術來使得該型別能夠輕鬆的沿著多個方向進行變化,而又不引入額外...

設計模式 橋接模式

橋接模式 用來解決多維度變化問題,一般適用於解決乙個物件有多個屬性同時變化,通過橋接的方式使多種屬性變化解耦,場景 1.畫筆 大小有大中小三種,每種對應5種不同的顏色 這裡的變化屬性為大小 顏色 詳解 抽象類 abstraction 定義抽象類的介面,維護乙個指向implementor型別物件的指標...