引例
目前累計服務客戶成百上千家,積累了豐富的產品開發及服務經驗。以網站設計水平和技術實力,樹立企業形象,為客戶提供成都網站建設、網站制作、網站策劃、網頁設計、網絡營銷、VI設計、網站改版、漏洞修補等服務。創新互聯公司始終以務實、誠信為根本,不斷創新和提高建站品質,通過對領先技術的掌握、對創意設計的研究、對客戶形象的視覺傳遞、對應用系統的結合,為客戶提供更好的一站式互聯網解決方案,攜手廣大客戶,共同發展進步。
就拿汽車在路上行駛來說 有小汽車 有公共汽車 它們都不但能在市區中的公路上行駛 也能在高速公路上行駛 這時你會發現 對于交通工具(汽車)有不同的類型 然而它們所行駛的環境也在變化 在軟件系統中就要適應這兩個方面的變化 怎么才應付這種變化呢?
概述
在軟件系統中 某些類型由于自身的邏輯 它具有兩個或多個維度的 那么如何應對這種 多維度的變化 ?就要利用面向對象的技術來使得類型能夠沿著多個方向進行 但又不引入額外的復雜度?這就要用到Bridge模式
意圖
將抽象部分與實現部分分離 使得它們都可以獨立的變化 GOF
結構圖
{ {
pubilc void run(){System out println( 在路上 );}
}
public class SpeedWay extends Road
{
public void run(){System out println( 高速公路 );}
}
//市區街道
public class Street extends Road
{
public void run(){System out println( 市區街道 );}
}
public class CarOnSpeedWay extends SpeedWay
{
public void run(){System out println( 小汽車在調整公路上行駛 );}
}
public class BusOnSpeedWay extends SpeedWay
{
public void run(){System out println( 公共汽車在高速公路上行駛 );}
}
public class CarOnStreet extends Street{
public void run(){System out println( 汽車在街道上行駛 );}
}
public class BusOnStreet extends Street{
public void run(){System out println( 公共汽車在街道上行駛 );}
}
傳統做法通過繼承來實現
結構圖
lishixinzhi/Article/program/Java/gj/201311/11160
1.抽象:抽象就是忽略一個主題中與當前目標無關的那些方面,以便更充分地注意與當前目標有關的方面。抽象并不打算了解全部問題,而只是選擇其中的一部分,暫時不用部分細節。抽象包括兩個方面,一是過程抽象,二是數據抽象。2.繼承:繼承是一種聯結類的層次模型,并且允許和鼓勵類的重用,它提供了一種明確表述共性的方法。對象的一個新類可以從現有的類中派生,這個過程稱為類繼承。新類繼承了原始類的特性,新類稱為原始類的派生類(子類),而原始類稱為新類的基類(父類)。派生類可以從它的基類那里繼承方法和實例變量,并且類可以修改或增加新的方法使之更適合特殊的需要。3.封裝:封裝是把過程和數據包圍起來,對數據的訪問只能通過已定義的界面。面向對象計算始于這個基本概念,即現實世界可以被描繪成一系列完全自治、封裝的對象,這些對象通過一個受保護的接口訪問其他對象。4.多態性:多態性是指允許不同類的對象對同一消息作出響應。多態性包括參數化多態性和包含多態性。多態性語言具有靈活、抽象、行為共享、代碼共享的優勢,很好的解決了應用程序函數同名問題。以上這些使得JAVA代碼容易理解和編寫,容易維護和拓展。
一共23種設計模式!
引用《軟件秘笈-設計模式那點事》書籍:
按照目的來分,設計模式可以分為創建型模式、結構型模式和行為型模式。
創建型模式用來處理對象的創建過程;結構型模式用來處理類或者對象的組合;行為型模式用來對類或對象怎樣交互和怎樣分配職責進行描述。
創建型模式用來處理對象的創建過程,主要包含以下5種設計模式:
? 工廠方法模式(Factory Method Pattern)
? 抽象工廠模式(Abstract Factory Pattern)
? 建造者模式(Builder Pattern)
? 原型模式(Prototype Pattern)
? 單例模式(Singleton Pattern)
結構型模式用來處理類或者對象的組合,主要包含以下7種設計模式:
? 適配器模式(Adapter Pattern)
? 橋接模式(Bridge Pattern)
? 組合模式(Composite Pattern)
? 裝飾者模式(Decorator Pattern)
? 外觀模式(Facade Pattern)
? 享元模式(Flyweight Pattern)
? 代理模式(Proxy Pattern)
行為型模式用來對類或對象怎樣交互和怎樣分配職責進行描述,主要包含以下11種設計模式:
? 責任鏈模式(Chain of Responsibility Pattern)
? 命令模式(Command Pattern)
? 解釋器模式(Interpreter Pattern)
? 迭代器模式(Iterator Pattern)
? 中介者模式(Mediator Pattern)
? 備忘錄模式(Memento Pattern)
? 觀察者模式(Observer Pattern)
? 狀態模式(State Pattern)
? 策略模式(Strategy Pattern)
? 模板方法模式(Template Method Pattern)
? 訪問者模式(Visitor Pattern)
Java中的bridge method又叫橋接方法
橋接方法是 JDK 1.5 引入泛型后,為了使Java的泛型方法生成的字節碼和 1.5 版本前的字節碼相兼容,由編譯器自動生成的方法。
我們可以通過Method.isBridge()方法來判斷一個方法是否是橋接方法,在字節碼中橋接方法會被標記為ACC_BRIDGE和ACC_SYNTHETIC,其中ACC_BRIDGE用于說明這個方法是由編譯生成的橋接方法,ACC_SYNTHETIC說明這個方法是由編譯器生成,并且不會在源代碼中出現。
當前題目:橋接模式java代碼 js橋接模式
本文地址:http://m.kartarina.com/article24/hgsgce.html
成都網站建設公司_創新互聯,為您提供用戶體驗、網站改版、面包屑導航、企業網站制作、定制網站、軟件開發
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯