首頁 > Java > java教程 > Java設計模式分類與原則解讀

Java設計模式分類與原則解讀

WBOY
發布: 2024-05-09 18:51:01
原創
1087 人瀏覽過

Java設計模式分為創建型、結構型和行為型三類,遵循單一職責、開放-封閉、依賴倒置和介面隔離原則。實戰案例包括:單例模式(創建型)、適配器模式(結構型)和策略模式(行為型)。設計模式提供了經過驗證的程式碼重複使用解決方案,有助於開發靈活且可擴展的程式碼。

Java設計模式分類與原則解讀

Java 設計模式分類與原則解讀

引言

設計模式是經過驗證的程式碼重複使用解決方案,用於解決常見的軟體開發問題。它們允許開發人員創建靈活、可維護且易於擴展的程式碼。 Java 提供了一套豐富的內建設計模式,用於解決各種問題。

分類

Java 設計模式依其關注點分為三類:

  • 建立型模式:用於建立物件。例如,工廠方法模式、單例模式。
  • 結構型模式:用於組合和關聯物件。例如,適配器模式、橋接模式。
  • 行為型模式:用於管理物件之間互動。例如,觀察者模式、策略模式。

原則

在應用設計模式時,遵循以下原則至關重要:

  • 單一職責原則:每個類別應只有一個主要職責。
  • 開放-封閉原則:對擴充開放,對修改關閉。
  • 依賴倒置原則:高層模組不應依賴低層模組,兩者都應依賴抽象。
  • 介面隔離原則:介面應盡可能精細,僅指定必要的操作。

實戰案例

單例模式(建立型模式)

單例模式確保一個類別只有一個實例。這通常用於建立全域資源或配置物件。

public class Singleton {

    private static Singleton instance = null;

    private Singleton() { }

    public static Singleton getInstance() {
        if (instance == null) {
            instance = new Singleton();
        }
        return instance;
    }
}
登入後複製

適配器模式(結構型模式)

適配器模式允許不相容的介面協同工作。例如,將舊系統與新系統整合。

interface Target {
    void operation();
}

class Adaptee {
    void specificOperation() { }
}

class Adapter implements Target {

    private Adaptee adaptee;

    public Adapter(Adaptee adaptee) {
        this.adaptee = adaptee;
    }

    @Override
    public void operation() {
        adaptee.specificOperation();
    }
}
登入後複製

策略模式(行為型模式)

策略模式允許在執行時間交換演算法。這用於實現可定製或可擴展的系統。

interface Strategy {
    int calculate(int a, int b);
}

class AdditionStrategy implements Strategy {

    @Override
    public int calculate(int a, int b) {
        return a + b;
    }
}

class SubtractionStrategy implements Strategy {

    @Override
    public int calculate(int a, int b) {
        return a - b;
    }
}

class Context {

    private Strategy strategy;

    public Context(Strategy strategy) {
        this.strategy = strategy;
    }

    public void executeStrategy(int a, int b) {
        System.out.println(strategy.calculate(a, b));
    }
}
登入後複製

結論

設計模式是 Java 開發中的強大工具,它們提供了一種經過驗證的方法來解決常見的軟體開發問題。透過理解分類和原則,開發人員可以有效地應用設計模式,創建靈活、可維護和可擴展的程式碼。

以上是Java設計模式分類與原則解讀的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板