美文网首页
设计模式-模板模式

设计模式-模板模式

作者: ShenHehe | 来源:发表于2018-03-22 10:44 被阅读0次

    步骤1

    抽象模板结构

    public abstract class TencentGame {
            //添加final关键字,防止子类覆盖此方法修改流程
        public final void play() {
            showLogo();
            init();
            startPlay();
            endPlay();
        }
        
        void showLogo() {
            System.out.println("显示腾讯游戏Logo");
        }
    
        abstract void init();
    
        abstract void startPlay();
    
        abstract void endPlay();
    }
    

    步骤2

    具体模板

    //FPS类型游戏
    public class FPSGame extends TencentGame {
    
        @Override
        void init() {
            System.out.println("初始化FPS游戏");
        }
    
        @Override
        void startPlay() {
            System.out.println("开始玩FPS游戏");
        }
    
        @Override
        void endPlay() {
            System.out.println("结束FPS游戏");
        }
    
    }
    
    //RGP类型游戏
    public class RGPGame extends TencentGame {
    
        @Override
        void init() {
            System.out.println("初始化RGP游戏");
        }
    
        @Override
        void startPlay() {
            System.out.println("开始玩RGP游戏");
        }
    
        @Override
        void endPlay() {
            System.out.println("结束RGP游戏");
        }
    
    }
    

    步骤3

    测试

    TencentGame game = new FPSGame();
    game.play();
    System.out.println("---------------");
    TencentGame game2 = new RGPGame();
    game2.play();
    

    输出

    显示腾讯游戏Logo
    初始化FPS游戏
    开始玩FPS游戏
    结束FPS游戏
    ---------------
    显示腾讯游戏Logo
    初始化RGP游戏
    开始玩RGP游戏
    结束RGP游戏
    

    相关文章

      网友评论

          本文标题:设计模式-模板模式

          本文链接:https://www.haomeiwen.com/subject/jyooqftx.html