模板设计模式
一般开发都会用到OCP原则,即开闭原则,类,模块,方法应对拓展开放,对修改关闭。
例子:冲咖啡和冲茶
冲咖啡步骤:
- 烧水;
- 冲咖啡;
- 倒入容器;
- 加糖和牛奶;
冲茶步骤:
- 烧水
- 冲茶
- 倒入容器
- 加柠檬汁
步骤1和3是一样的,如果两种方式都用类的方式去写,会重复很多代码,是茶和咖啡主导了两个类的构成,如果有新饮料加入,会费很多工作,因此选用模板设计方法是一个重要的选择。
模板方法模式:
在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。
这是最最常见的设计模式之一。
代码举例
public class MoBanSheJi {
public static void main(String[] args) {
CaffeineBeverage c = new Tea();
}
}