计划模式-模板方法实现
模板方法模式(Template Method Pattern)是一种举动型计划模式,它界说了一个操纵中的算法骨架,而将某些步调的实现耽误到子类中。通过这种方式,模板方法模式可以让子类在不改变算法布局的环境下,重新界说算法中的某些步调模式布局
模板方法模式的布局包罗以下几个关键部分:
[*]抽象类(Abstract Class):界说算法的骨架,并包罗一个或多个抽象方法,留给子类实现
[*]具体子类(Concrete Class):实现抽象类中的抽象方法,完成具体的算法步调
[*]模板方法(Template Method):在抽象类中界说的具体方法,按照肯定的步调调用抽象方法,确保算法的团体布局
模式特点
[*]封装稳固部分,扩展可变部分:算法的骨架固定在抽象类中,具体实现细节由子类完成
[*]遵照开闭原则:新增功能时,只需扩展子类,而不须要修改抽象类
[*]镌汰代码重复:公共逻辑封装在抽象类中,克制子类重复实现
示例代码
以下是一个利用模板方法模式的示例:制作饮品的过程
// 抽象类:饮品制作流程
abstract class Beverage {
// 模板方法:定义饮品制作的算法骨架
public final void prepareRecipe() {
boilWater();
brew();
pourInCup();
if (customerWantsCondiments()) {
addCondiments();
}
}
// 公共步骤,所有饮品都需要
private void boilWater() {
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]