:
父类视角 : 一次性 实现 一个算法 不变的部分 , 并将 可变部分 留给 子类 实现 ;
子类视角 : 各个子类中 , 公共部分 被提取出来 , 集中到一个公共的父类中 , 避免代码重复 ;
模板方法模式的目的是...钩子方法 是 模板对子类更进一步开方和扩展 ;
五、模板方法模式相关设计模式
----
模板方法模式与工厂方法模式 : 工厂方法 是 模板方法的一种特殊实现 ;
模板方法模式和策略模式 : 二者都 封装了算法逻辑...;
策略模式 的目的是 使 各种算法 之间可以 相互替换 , 并且不影响最终用户的使用 , 对终端用户透明 ;
模板方法模式 是针对 一个算法流程 , 将其中某些不太一样的算法步骤 , 交给子类实现...package templatemethod;
public abstract class Fridge {
/**
* 模板方法 不能被修改 , 使用 final 修饰 , 不允许子类覆盖该方法...final void codeStorage() {
System.out.println("打开冷藏功能");
}
/**
* 钩子方法 , 子类可以进行覆盖