原創(chuàng)作品,可以轉(zhuǎn)載,但是請(qǐng)標(biāo)注出處地址http://www.cnblogs.com/V1haoge/p/6497919.html
這里摘抄一份他處的概念,你可以不必理會(huì),先看下面得講解與實(shí)例,然后返回來理解概念,不然抽象的概念會(huì)讓你崩潰...
橋接(Bridge)是用于把抽象化與實(shí)現(xiàn)化解耦,使得二者可以獨(dú)立變化。這種類型的設(shè)計(jì)模式屬于結(jié)構(gòu)型模式,它通過提供抽象化和實(shí)現(xiàn)化之間的橋接結(jié)構(gòu),來實(shí)現(xiàn)二者的解耦。
這種模式涉及到一個(gè)作為橋接的接口,使得實(shí)體類的功能獨(dú)立于接口實(shí)現(xiàn)類。這兩種類型的類可被結(jié)構(gòu)化改變而互不影響。
個(gè)人理解:橋接是一個(gè)接口,它與一方應(yīng)該是綁定的,也就是解耦的雙方中的一方必然是繼承這個(gè)接口的,這一方就是實(shí)現(xiàn)方,而另一方正是要與這一方解耦的抽象方,如果不采用橋接模式,一般我們的處理方式是直接使用繼承來實(shí)現(xiàn),這樣雙方之間處于強(qiáng)鏈接,類之間關(guān)聯(lián)性極強(qiáng),如要進(jìn)行擴(kuò)展,必然導(dǎo)致類結(jié)構(gòu)急劇膨脹。采用橋接模式,正是為了避免這一情況的發(fā)生,將一方與橋綁定,即實(shí)現(xiàn)橋接口,另一方在抽象類中調(diào)用橋接口(指向的實(shí)現(xiàn)類),這樣橋方可以通過實(shí)現(xiàn)橋接口進(jìn)行單方面擴(kuò)展,而另一方可以繼承抽象類而單方面擴(kuò)展,而之間的調(diào)用就從橋接口來作為突破口,不會(huì)受到雙方擴(kuò)展的任何影響。
下面的實(shí)例能真正體現(xiàn)著一點(diǎn):
實(shí)例準(zhǔn)備:我們假設(shè)有一座橋,橋左邊為A,橋右邊為B,A有A1,A2,A3等,表示橋左邊的三個(gè)不同地方,B有B1,B2,B3等,表示橋右邊的三個(gè)不同地方,假設(shè)我們要從橋左側(cè)A出發(fā)到橋的右側(cè)B,我們可以有多重方案,A1到B1,A1到B2,A1到B3,A2到B1...等等,以此為例,代碼如下:
橋接口:Qiao
1 public interface Qiao