国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達(dá)式|C/C++|IOS|C#|Swift|Android|VB|R語(yǔ)言|JavaScript|易語(yǔ)言|vb.net|

服務(wù)器之家 - 編程語(yǔ)言 - Java教程 - 23種設(shè)計(jì)模式(9) java橋接模式

23種設(shè)計(jì)模式(9) java橋接模式

2021-02-02 11:20靜默虛空 Java教程

這篇文章主要為大家詳細(xì)介紹了java設(shè)計(jì)模式之橋接模式,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

介紹

橋接模式 (Bridge)將抽象部分與實(shí)現(xiàn)部分分離,使它們都可以獨(dú)立的變化。
橋接模式是一種結(jié)構(gòu)式模式。

結(jié)構(gòu)

23種設(shè)計(jì)模式(9) java橋接模式

代碼實(shí)現(xiàn)

Implementor : 定義實(shí)現(xiàn)接口。

java" id="highlighter_837974">
?
1
2
3
4
interface Implementor {
  // 實(shí)現(xiàn)抽象部分需要的某些具體功能
  public void operationImpl();
}

Abstraction : 定義抽象接口。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
abstract class Abstraction {
  // 持有一個(gè) Implementor 對(duì)象,形成聚合關(guān)系
  protected Implementor implementor;
  
  public Abstraction(Implementor implementor) {
    this.implementor = implementor;
  }
  
  // 可能需要轉(zhuǎn)調(diào)實(shí)現(xiàn)部分的具體實(shí)現(xiàn)
  public void operation() {
    implementor.operationImpl();
  }
}

ConcreteImplementor :  實(shí)現(xiàn) Implementor 中定義的接口。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
class ConcreteImplementorA implements Implementor {
  @Override
  public void operationImpl() {
    // 真正的實(shí)現(xiàn)
    System.out.println("具體實(shí)現(xiàn)A");
  
}
 
class ConcreteImplementorB implements Implementor {
  @Override
  public void operationImpl() {
    // 真正的實(shí)現(xiàn)
    System.out.println("具體實(shí)現(xiàn)B");
  
}

RefinedAbstraction : 擴(kuò)展 Abstraction 類。

?
1
2
3
4
5
6
7
8
9
10
11
12
class RefinedAbstraction extends Abstraction {
 
  public RefinedAbstraction(Implementor implementor) {
    super(implementor);
  }
  
  public void otherOperation() {
    // 實(shí)現(xiàn)一定的功能,可能會(huì)使用具體實(shí)現(xiàn)部分的實(shí)現(xiàn)方法,
    // 但是本方法更大的可能是使用 Abstraction 中定義的方法,
    // 通過(guò)組合使用 Abstraction 中定義的方法來(lái)完成更多的功能。
  }
}

測(cè)試代碼

?
1
2
3
4
5
6
7
8
public class BridgePattern {
  public static void main(String[] args) {
    Implementor implementor = new ConcreteImplementorA();
    RefinedAbstraction abstraction = new RefinedAbstraction(implementor);
    abstraction.operation();
    abstraction.otherOperation();
  }
}

運(yùn)行結(jié)果

具體實(shí)現(xiàn)A
其他操作

應(yīng)用場(chǎng)景

1、如果你不希望在抽象和實(shí)現(xiàn)部分采用固定的綁定關(guān)系,可以采用橋接模式,來(lái)把抽象和實(shí)現(xiàn)部分分開(kāi),
然后在程序運(yùn)行期間來(lái)動(dòng)態(tài)的設(shè)置抽象部分需要用到的具體的實(shí)現(xiàn),還可以動(dòng)態(tài)切換具體的實(shí)現(xiàn)。

2、如果出現(xiàn)抽象部分和實(shí)現(xiàn)部分都應(yīng)該可以擴(kuò)展的情況,可以采用橋接模式,讓抽象部分和實(shí)現(xiàn)部分可以
獨(dú)立的變化,從而可以靈活的進(jìn)行單獨(dú)擴(kuò)展,而不是攪在一起,擴(kuò)展一邊會(huì)影響到另一邊。

3、如果希望實(shí)現(xiàn)部分的修改,不會(huì)對(duì)客戶產(chǎn)生影響,可以采用橋接模式,客戶是面向抽象的接口在運(yùn)行,
實(shí)現(xiàn)部分的修改,可以獨(dú)立于抽象部分,也就不會(huì)對(duì)客戶產(chǎn)生影響了,也可以說(shuō)對(duì)客戶是透明的。

4、如果采用繼承的實(shí)現(xiàn)方案,會(huì)導(dǎo)致產(chǎn)生很多子類,對(duì)于這種情況,可以考慮采用橋接模式,分析功能變化的原因,看看是否能分離成不同的緯度,然后通過(guò)橋接模式來(lái)分離它們,從而減少子類的數(shù)目。

要點(diǎn)

如果一個(gè)系統(tǒng)需要在構(gòu)件的抽象化角色和具體化角色之間增加更多的靈活性,避免在兩個(gè)層次之間建立靜態(tài)的聯(lián)系。
抽象化角色和具體化角色都應(yīng)該可以被子類擴(kuò)展。在這種情況下,橋接模式可以靈活地組合不同的抽象化角色和具體化角色,并獨(dú)立化地?cái)U(kuò)展。
設(shè)計(jì)要求實(shí)現(xiàn)化角色的任何改變不應(yīng)當(dāng)影響客戶端,或者說(shuō)實(shí)現(xiàn)化角色的改變對(duì)客戶端是完全透明的。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持服務(wù)器之家。

原文鏈接:http://www.cnblogs.com/jingmoxukong/p/4224661.html

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25
主站蜘蛛池模板: 久久久久久久久久久国产 | 久久精品电影 | 亚洲免费一区 | 中文字字幕一区二区三区四区五区 | 日韩超级大片免费看国产国产播放器 | 国产综合免费视频 | 精品国产在 | 久综合网 | 国产一区免费 | 日韩亚洲一区二区 | 成人性毛片| 91av免费| av免费观看网页 | 欧美日韩精品在线观看 | 免费一级片在线 | 亚洲成人在线观看视频 | www.avtt天堂网 | 精品在线一区 | 在线成人av| 一级片 | 精品第一页 | 一区二区三区久久久 | 黄色四虎| 国产二区三区 | 免费视频国产 | 在线免费观看中文字幕 | 国产精品美女久久久久久久网站 | 高清三区 | 色天天综合 | 欧美xo影院 | www久| 亚洲v在线 | 亚洲国内精品 | 亚洲一区二区精品在线观看 | 久久h | 动漫羞免费网站中文字幕 | 97国产精品视频 | 欧美精品v国产精品v日韩精品 | 国产亚洲精品美女久久久久久久久久 | 亚洲一区在线日韩在线深爱 | av一二 |