首页 >> 大全

模板方法(Template)

2023-11-02 大全 31 作者:考证青年

模板方法模式:

顾名思义,模板方法就是造一个模板,比如:

1、生活中写简历,我们可能会问同学,有没有简历模板呀,借我看一下,我们拿到模板只要按照我们个人情况往上加就行了;

2、再比如语文答题,老师可能会说这种题答题都是有模板的,先答什么,再答什么,里面的内容根据题意往上加就行了

可见,不管是生活中还是程序中,有些东西的组成部分,执行顺序是比较复杂,难记的,要是给个模板就简单很多了。所以,模板方法模式由此而来。

举个栗子:

_模板方法模式应用场景_模板方法设计模式

我们要采访一个人,让他叙述一下他的饮食情况,并给他一个模板:

public abstract class Diet {protected abstract Boolean needBreakfast();protected abstract String breakfast();protected abstract String lunch();protected abstract String dinner();protected void onesDiet() {System.out.println("大家好,我来讲讲我的饮食情况,");if (needBreakfast()) { //还可以使用钩子函数控制模板的执行System.out.println("我早饭吃的是" + breakfast());}System.out.println("我中饭吃的是" + lunch());System.out.println("我晚饭吃的是" + dinner());System.out.println("嗯,就这些!");}
}

被采访者只需定义早中晚饭吃什么,就能输出饮食情况了。比如说jack

public class JackDiet extends Diet {@Overrideprotected Boolean needBreakfast() {return true;}@Overrideprotected String breakfast() {return "玉米";}@Overrideprotected String lunch() {return "米饭";}@Overrideprotected String dinner() {return "水果";}
}

public class Main {public static void main(String[] args) {Diet diet = new JackDiet();diet.onesDiet();}
}

模板方法设计模式_模板方法模式应用场景_

输出:

相比要说一大堆话,我们只要用户说出关键词就行了,其余的交给模板处理。简单了很多,采访下一个人也是如此。

总结:

通过上面的例子我们知道,模板方法的用途就和我们生活中所说的模板是一样的,针对顺序,组成复杂,且差异性大的事物,我们给用户提供一个模板,是会大大降低开发,使用难度的。

源码中使用模板方法的地方有:

关于我们

最火推荐

小编推荐

联系我们


版权声明:本站内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 88@qq.com 举报,一经查实,本站将立刻删除。备案号:桂ICP备2021009421号
Powered By Z-BlogPHP.
复制成功
微信号:
我知道了