中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

做網(wǎng)站需要公司有哪些游戲優(yōu)化大師官網(wǎng)

做網(wǎng)站需要公司有哪些,游戲優(yōu)化大師官網(wǎng),供應(yīng)鏈管理平臺(tái)官網(wǎng),自然人做音頻網(wǎng)站違法嗎橋接模式 1、定義 橋接模式:將抽象部分與它的實(shí)現(xiàn)部分解耦,使得兩者都能獨(dú)立變化 2、橋接模式結(jié)構(gòu) Abstraction(抽象類):它是用于定義抽象類的,通常是抽象類而不是接口,其中定義了一個(gè)Imple…

橋接模式

1、定義

橋接模式:將抽象部分與它的實(shí)現(xiàn)部分解耦,使得兩者都能獨(dú)立變化

2、橋接模式結(jié)構(gòu)

  • Abstraction(抽象類):它是用于定義抽象類的,通常是抽象類而不是接口,其中定義了一個(gè)Implementor類型的對(duì)象并可以維護(hù)該對(duì)象,它與Implementor之間具有關(guān)聯(lián)關(guān)系,既可以包含抽象業(yè)務(wù)方法,也可以包含具體業(yè)務(wù)方法
  • RefinedAbstraction(擴(kuò)充抽象類):擴(kuò)充Abstraction,通常情況下它不再是抽象類而是具體類,在RefinedAbstraction中可以調(diào)用在Implementor中定義的業(yè)務(wù)方法
  • Implementor(實(shí)現(xiàn)類接口):它是定義實(shí)現(xiàn)類的接口,這個(gè)接口不一定要與Abstraction完全一致,事實(shí)上兩個(gè)接口可以完全不同。一般而言,Implementor僅提供基本操作,而Abstraction定義的接口可能會(huì)做更多更復(fù)雜的操作。通過關(guān)聯(lián)關(guān)系,在Abstraction中不僅擁有自己的方法,還可以調(diào)用到Implementor中定義的方法,使用關(guān)聯(lián)關(guān)系來替代繼承關(guān)系
  • ConcreteImplementor(具體實(shí)現(xiàn)類):它實(shí)現(xiàn)了Implementor接口

在這里插入圖片描述

3、示例

Abstraction 創(chuàng)建Person抽象類

public abstract class Person {private Clothing clothing;private String type;public Clothing getClothing() {return clothing;}public void setClothing(Clothing clothing) {this.clothing = clothing;}public void setType(String type) {this.type = type;}public String getType() {return this.type;}public abstract void dress();
}

RefinedAbstraction 創(chuàng)建Man、Lady類

public class Man extends Person{public Man() {setType("男人");}@Overridepublic void dress() {Clothing clothing = getClothing();clothing.personDressCloth(this);}
}
public class Lady extends Person {public Lady() {setType("女人");}@Overridepublic void dress() {Clothing clothing = getClothing();clothing.personDressCloth(this);}
}

Implementor 創(chuàng)建Clothing抽象類

public abstract class Clothing {public abstract void personDressCloth(Person person);
}

ConcreteImplementor 創(chuàng)建Jacket、Pants類

public class Jacket extends Clothing {@Overridepublic void personDressCloth(Person person) {System.out.println(person.getType() + "穿馬甲");}
}
public class Pants extends Clothing {@Overridepublic void personDressCloth(Person person) {System.out.println(person.getType() + "穿褲子");}
}

測(cè)試類

public class Client {public static void main(String[] args) {Person man = new Man();Person lady = new Lady();Clothing jacket = new Jacket();Clothing pants = new Pants();jacket.personDressCloth(man);pants.personDressCloth(man);jacket.personDressCloth(lady);pants.personDressCloth(lady);}
}

輸出結(jié)果

男人穿馬甲
男人穿褲子
女人穿馬甲
女人穿褲子

4、橋接模式優(yōu)缺點(diǎn)

4.1優(yōu)點(diǎn)
  • 分離抽象接口及其實(shí)現(xiàn)部分。使用對(duì)象間的關(guān)聯(lián)關(guān)系解耦了抽象和現(xiàn)實(shí)之間固有的綁定關(guān)系,使抽象和實(shí)現(xiàn)可以沿著各自的維度來變化
  • 橋接模式在有些情況下可以取代多層繼承方案,極大減少了子類的個(gè)數(shù)
  • 提高了系統(tǒng)的可擴(kuò)展性,在兩個(gè)變化維度中任意擴(kuò)展一個(gè)維度都不需要修改原有系統(tǒng),符合開閉原則
4.2缺點(diǎn)
  • 增加系統(tǒng)的理解與設(shè)計(jì)難度,關(guān)聯(lián)關(guān)系建立在抽象層
  • 要求正確的識(shí)別出系統(tǒng)中的兩個(gè)獨(dú)立變化的維度,因此其適用范圍具有一定的局限性

5、橋接模式的適用環(huán)境

1.不需要在抽象和它的實(shí)現(xiàn)部分之間有一個(gè)固定的綁定關(guān)系,在程序運(yùn)行時(shí)刻實(shí)現(xiàn)部分程序可以被選擇或者切換。

2.類的抽象以及它的實(shí)現(xiàn)都應(yīng)該可以通過生成子類的方法加以擴(kuò)充。 這時(shí)橋接模式可以對(duì)不同的抽象接口和實(shí)現(xiàn)部分進(jìn)行組合,并分別對(duì)它們進(jìn)行擴(kuò)充。

3.對(duì)一個(gè)抽象的實(shí)現(xiàn)部分的修改應(yīng)對(duì)其他業(yè)務(wù)不產(chǎn)生影響,即其他業(yè)務(wù)的代碼不必重新編譯。

4.需要在多個(gè)對(duì)象間共享實(shí)現(xiàn)(可能使用引用計(jì)數(shù)),但同時(shí)需要對(duì)其他業(yè)務(wù)無感知。

http://www.risenshineclean.com/news/57029.html

相關(guān)文章:

  • 深圳市網(wǎng)站維護(hù)外貿(mào)谷歌優(yōu)化
  • 做網(wǎng)站掙錢快又多武漢seo招聘
  • 做網(wǎng)站的網(wǎng)絡(luò)公司有哪些linux網(wǎng)站入口
  • 網(wǎng)站建設(shè)公司前景如何在百度上營(yíng)銷
  • 網(wǎng)站開發(fā)論文結(jié)論百度游戲排行榜
  • 北京設(shè)計(jì)制作網(wǎng)站制作包頭網(wǎng)站建設(shè)推廣
  • 做個(gè)網(wǎng)站 多少錢網(wǎng)絡(luò)新聞發(fā)布平臺(tái)
  • 專業(yè)建設(shè)企業(yè)網(wǎng)站免費(fèi)做網(wǎng)站的平臺(tái)
  • 正規(guī)網(wǎng)站開發(fā)公司seo公司排名教程
  • 制作購(gòu)物網(wǎng)站怎么做seo網(wǎng)站關(guān)鍵詞優(yōu)化
  • dns設(shè)置 看國(guó)外網(wǎng)站百度應(yīng)用下載
  • 網(wǎng)站制作百度網(wǎng)盤網(wǎng)絡(luò)推廣比較經(jīng)典和常用的方法有
  • wordpress tdk鄭州seo排名扣費(fèi)
  • 彩票自己開盤做網(wǎng)站多地優(yōu)化完善疫情防控措施
  • 哪些網(wǎng)站可以做招商廣告持啊傳媒企業(yè)推廣
  • wordpress更改路徑湖北網(wǎng)站seo設(shè)計(jì)
  • 中國(guó)新聞社是央企嗎成都seo
  • 做網(wǎng)站可以申請(qǐng)國(guó)家補(bǔ)助嗎西安網(wǎng)站制作建設(shè)
  • 哪些網(wǎng)站是react做的企業(yè)培訓(xùn)師資格證報(bào)考2022
  • 山東泰安最新疫情深圳搜狗seo
  • 網(wǎng)站建設(shè)報(bào)名系統(tǒng)是真的嗎蘇州seo快速優(yōu)化
  • 杭州哪里做網(wǎng)站好如何快速推廣網(wǎng)上國(guó)網(wǎng)
  • 1.網(wǎng)站建設(shè)基本流程是什么關(guān)鍵詞排名優(yōu)化技巧
  • 網(wǎng)站專題頁面設(shè)計(jì)欣賞網(wǎng)絡(luò)營(yíng)銷是指
  • 企業(yè)信用網(wǎng)站建設(shè)網(wǎng)絡(luò)運(yùn)營(yíng)培訓(xùn)哪里有學(xué)校
  • 微企免費(fèi)網(wǎng)站建設(shè)制作網(wǎng)站要花多少錢
  • 班級(jí)網(wǎng)站源代碼下載關(guān)鍵詞查網(wǎng)址
  • thinkphp開發(fā)企業(yè)網(wǎng)站廣州seo網(wǎng)站推廣優(yōu)化
  • 做網(wǎng)站容易找工作嗎互聯(lián)網(wǎng)推廣有哪些方式
  • 怎么建設(shè)企業(yè)網(wǎng)站網(wǎng)絡(luò)推廣營(yíng)銷