模板方法模式(think in java中的设计模式)

模板方法模式:模板方法模式顾名思义就是一种构造模块化的设计模式。将一次行为分为多种行为,灵活的调用不同模块进行工作。比如在饭店吃饭,分为:点菜,吃饭,买单等行为无论什么饭店大致都是这三种行为。因此我们可以构建抽象类饭店吃饭,然后根据不同的饭店修改吃菜的这个步达到效果。他是一种类行为模式.。

package com.hhdeng.controller;

public class Test {
    public static void main(String[] args){
        HaveDinner hd=new HaveDinner();
        hd.HaveEatDinner(new ChineseFood());
        hd.HaveEatDinner(new JapanFood());
    }
    
    
}
class HaveDinner{
    public void HaveEatDinner(Dinner D){
        D.book();
        D.eat();
        D.pay();
    }
}
abstract class  Dinner{
    public abstract void eat();
    public  void book(){
        System.out.println("订单点菜");
    }
    public  void pay(){
        System.out.println("订单付款");
    }
}
class JapanFood extends Dinner{
    @Override
    public void eat() {
        System.out.println("吃寿司,吃鱼生");
    }
}
class ChineseFood extends Dinner{
    @Override
    public void eat() {
        System.out.println("吃米饭,吃麻婆豆腐");
    }
}
原文地址:https://www.cnblogs.com/blackdeng/p/7094577.html