亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java設計模式之如何實現橋接模式

發布時間:2021-06-07 10:12:43 來源:億速云 閱讀:119 作者:小新 欄目:開發技術

這篇文章主要為大家展示了“Java設計模式之如何實現橋接模式”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“Java設計模式之如何實現橋接模式”這篇文章吧。

橋接模式

橋接模式是將抽象部分與它的實現部分分離,使他們都可以獨立地變化。它是一種對象結構型模式,又稱為柄體(Handle and Body)模式或接口(Interface)模式。

Java設計模式之如何實現橋接模式

上圖一個類被三個類繼承,使我們的程序擴展性,可維護性低,違反了單一職責原則。

Java設計模式之如何實現橋接模式

具體代碼實現如下:

1.創建品牌接口

package com.jialidun.gof.birdge;

//品牌
public interface Brand {

    void info();
}

2.創建計算機的抽象類

package com.jialidun.gof.birdge;

//抽象的電腦類型類
public abstract class Computer {

    //組合,品牌 橋
    protected Brand brand;

    public Computer(Brand brand){
        this.brand = brand;
    }

    public void info(){
        brand.info();//自帶品牌

    }
}

3.蘋果品牌

package com.jialidun.gof.birdge;

//蘋果品牌
public class Apple implements Brand{
    @Override
    public void info() {
        System.out.print("蘋果"+"\n");
    }
}

4.聯想品牌

package com.jialidun.gof.birdge;

//聯想品牌
public class Lenovo implements Brand{
    @Override
    public void info() {
        System.out.print("聯想"+"\n");
    }
}

5.臺式機

package com.jialidun.gof.birdge;

public class Desktop extends Computer{
    public Desktop(Brand brand) {
        super(brand);
        System.out.print("臺式機");
    }
}

6.筆記本

package com.jialidun.gof.birdge;

public class laptop extends Computer{
    public laptop(Brand brand) {
        super(brand);
        System.out.print("筆記本");
    }
}

7.測試

package com.jialidun.gof.birdge;

public class Test {
    public static void main(String[] args) {
        //蘋果筆記本
        Computer computer = new laptop(new Apple());
        computer.info();


        //聯想臺式機
        Desktop desktop = new Desktop(new Lenovo());
        desktop.info();


    }
}

Java設計模式之如何實現橋接模式

好處分析:

1.橋接模式偶爾類似于多繼承方案,但是多繼承方案違背了類的單一職責原則, 復用性比較差,類的個數也非常多,橋接模式是比多繼承方案更好的解決方法。極大的減少了子類的個數,從而降低管理和維護的成本

2.橋接模式提高了系統的可擴充性,在兩個變化維度中任意擴展一個維度,都不需要修改原有系統。符合開閉原則,就像一座橋,可以把兩個變化的維度連接起來

劣勢分析

1.橋接模式的引入會增加系統的理解與設計難度,由于聚合關聯關系建立在抽象層,要求開發者針對抽象進行設計與編程。

2.橋接模式要求正確識別出系統中兩個獨立變化的維度,因此其使用范圍具有一定的局限性。

以上是“Java設計模式之如何實現橋接模式”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

南木林县| 通河县| 于田县| 乌拉特后旗| 博客| 临清市| 赤城县| 曲周县| 沙雅县| 绍兴市| 霍城县| 颍上县| 金塔县| 富平县| 汉沽区| 星子县| 沅陵县| 汉源县| 洛川县| 富源县| 敦煌市| 乐至县| 辉县市| 福安市| 濮阳县| 喀喇沁旗| 分宜县| 论坛| 镇巴县| 武汉市| 乌拉特后旗| 富阳市| 江口县| 敖汉旗| 桂平市| 勃利县| 青海省| 湖州市| 泸西县| 长子县| 苍南县|