模板模式:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。
使用场景:1、定义整个算法的步骤结构,实现交给客户端来完成。
2、几个类的算法基本相同,只有一些细微的差别时。
public class TemplatePattern {
public static void main(String[] args) {
Template template = new Client();
template.execute();
}
}
abstract class Template{
protected abstract void init();
protected abstract void start();
protected abstract void close();
public void execute(){
init();
start();
close();
}
}
class Client extends Template{
@Override
protected void init() {
System.out.println("初始化");
}
@Override
protected void start() {
System.out.println("开启");
}
@Override
protected void close() {
System.out.println("关闭");
}
}