Java中23种设计模式之—基于抽象类的模板设计模式

目录

模板模式(Template Method): 

举例

钩子函数(hook)-挂钩

模板设计模式/方法-总结


模板模式(Template Method): 

定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤

举例

关于饮品的制作:

咖啡(一键启动按钮) 柠檬红茶(一键启动) 奶茶
步骤1 将水烧开 将水烧开 将水烧开
步骤2 将咖啡冲泡在水中 将茶泡在水中
步骤3 泡好的咖啡倒入顾客杯中

泡好的茶倒在顾客杯子中

步骤4 加糖和牛奶

加柠檬

1.一键启动按钮:即用这个方法,四个步骤直接就完了,饮料就直接出来了,并且这个方法不允许修改,子类只能使用不能修改。

2.当直接创建两个饮品类单独实现咖啡和红茶两个代码时存在问题:

观察代码:

public class Coffee {
    //一键启动按钮,点击能出一杯咖啡(包含所有制作流程)
    public void prepareRecipe(){
        boilWater();//烧水
        brewCoffeeBag();//泡咖啡
        pourIncup();//泡好的咖啡倒入杯中
        addSugarAndMilk();//加入糖和奶
    }

    private void addSugarAndMilk() {
   
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值