欧美free性护士vide0shd,老熟女,一区二区三区,久久久久夜夜夜精品国产,久久久久久综合网天天,欧美成人护士h版

目錄

java設(shè)計(jì)模式策略模式 java設(shè)計(jì)模式的作用

策略模式是一種行為設(shè)計(jì)模式,它允許在運(yùn)行時(shí)選擇算法的行為。策略模式定義了一系列的算法,并將每個(gè)算法封裝起來(lái),使它們可以互換。策略模式讓算法獨(dú)立于使用它的客戶而變化,這樣可以實(shí)現(xiàn)算法的可替換性。

在Java中,實(shí)現(xiàn)策略模式可以使用enumMap來(lái)實(shí)現(xiàn)。以下是一個(gè)簡(jiǎn)單的策略模式示例:

// 枚舉類,表示所有可能的策略
public enum Strategy {
    STRATEGY1,
    STRATEGY2,
    STRATEGY3
}

// 策略接口
public interface StrategyInterface {
    void execute();
}

// 具體策略類
public class ConcreteStrategy1 implements StrategyInterface {
    @Override
    public void execute() {
        System.out.println("執(zhí)行策略1");
    }
}

public class ConcreteStrategy2 implements StrategyInterface {
    @Override
    public void execute() {
        System.out.println("執(zhí)行策略2");
    }
}

public class ConcreteStrategy3 implements StrategyInterface {
    @Override
    public void execute() {
        System.out.println("執(zhí)行策略3");
    }
}

// 上下文類,用于存儲(chǔ)策略并調(diào)用
public class Context {
    private Strategy strategy;

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

    public void execute() {
        strategy.execute();
    }
}

public class Main {
    public static void main(String[] args) {
        StrategyInterface strategy1 = new ConcreteStrategy1();
        StrategyInterface strategy2 = new ConcreteStrategy2();
        StrategyInterface strategy3 = new ConcreteStrategy3();

        Context context1 = new Context(strategy1);
        Context context2 = new Context(strategy2);
        Context context3 = new Context(strategy3);

        context1.execute(); // 輸出:執(zhí)行策略1
        context2.execute(); // 輸出:執(zhí)行策略2
        context3.execute(); // 輸出:執(zhí)行策略3
    }
}

在這個(gè)示例中,我們定義了一個(gè)Strategy枚舉類,表示所有可能的策略。然后實(shí)現(xiàn)了一個(gè)StrategyInterface接口,定義了一個(gè)execute()方法。接下來(lái),我們創(chuàng)建了三個(gè)具體的策略類(ConcreteStrategy1、ConcreteStrategy2ConcreteStrategy3),分別實(shí)現(xiàn)了StrategyInterface接口。最后,我們創(chuàng)建了一個(gè)Context類,用于存儲(chǔ)策略并調(diào)用。

本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點(diǎn)和立場(chǎng)。

轉(zhuǎn)載請(qǐng)注明,如有侵權(quán),聯(lián)系刪除。

本文鏈接:http://m.gantiao.com.cn/post/2027576143.html

發(fā)布評(píng)論

您暫未設(shè)置收款碼

請(qǐng)?jiān)谥黝}配置——文章設(shè)置里上傳

掃描二維碼手機(jī)訪問(wèn)

文章目錄