W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
在模板模式中,父抽象類公開幾個抽象方法供子類實現(xiàn)。在父抽象類中有另一個方法或幾個方法使用抽象方法來實現(xiàn)業(yè)務(wù)邏輯。
抽象方法通常用于父類所需的每個步驟。
例如,為了使用新的軟件,我們需要下載,安裝,配置和運行。如果我們要使用模板模式來編碼邏輯,我們將創(chuàng)建一個父類如下。
abstract class UseSoftware{ abstract void download(); abstract void install(); abstract void configuration(); abstract void run(); public void useNewSoftware(){ download(); install(); configuration(); run(); } }
對于使用不同的軟件,我們只需要從上面的抽象類繼承并提供詳細(xì)的實現(xiàn)。
模板模式是一種行為模式。
abstract class Software { abstract void initialize(); abstract void start(); abstract void end(); //template method public final void play(){ //initialize initialize(); //start start(); //end end(); } } class Browser extends Software { @Override void end() { System.out.println("Browser Finished!"); } @Override void initialize() { System.out.println("Browser Initialized!."); } @Override void start() { System.out.println("Browser Started."); } } class Editor extends Software { @Override void end() { System.out.println("Editor Finished!"); } @Override void initialize() { System.out.println("Editor Initialized!"); } @Override void start() { System.out.println("Editor Started!"); } } public class Main { public static void main(String[] args) { Software s1 = new Browser(); s1.play(); s1 = new Editor(); s1.play(); } }
上面的代碼生成以下結(jié)果。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: