Java設計模式--模板模式

這種模式主要是為了解決這樣一種問題,有些情況下,一個算法的流程已經(jīng)確定,但在不同情況下可能會有微小的改變,這時候我們可以借助模板,將一些步驟延遲到子類中,從而提高程序的靈活性。簡單實現(xiàn):

模板抽象類

public abstract class Template {
    public void step1(){
        System.out.println("step1 run...");
    }

    public void step2(){
        System.out.println("step2 run...");
    }

    public void step3(){
        System.out.println("step3 run...");
    }

    public void run(){
        step1();
        step2();
        step3();
    }
}

具體子類

public class Product1 extends Template{
    @Override
    public void step1() {
        System.out.println("product1 step1 run ...");
    }
}

public class Product2 extends Template{
    @Override
    public void step3() {
        System.out.println("product2 step3 run ...");
    }
}

測試類·

    public static void main(String[] args) {
        new Product1().run();
        new Product2().run();
    }
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內(nèi)容