模板⽅法模式
是指定义⼀个算法的⻣架,并允许⼦类为⼀个或者多个步骤提供实现。模板⽅法模式
使得⼦类可以在不改变算法结构的情况下,重新定义算法的某些步骤,属于⾏为型设计模式。
采⽤模板⽅法模式的核⼼思路是处理某个流程的代码已经具备,但其中某些节点的代码暂时不能确
定。此时可以使⽤模板⽅法。
示例
package com.lwl.edu;
/**
* ⾯试⼤⼚流程类
*/
public abstract class Interview {
private final void register() {
System.out.println("⾯试登记");
}
protected abstract void communicate();
private final void notifyResult() {
System.out.println("HR⼩姐姐通知⾯试结果");
}
protected final void process() {
this.register();
this.communicate();
this.notifyResult();
}
}
Java岗位⾯试者
package com.lwl.edu;
/**
* ⾯试⼈员1,它是来⾯试Java⼯程师的
*/
public class Interviewee1 extends Interview{
public void communicate() {
System.out.println("我是⾯试⼈员1,来⾯试Java⼯程师,我们聊的是Java相关内
容");
}
}
前端岗位⾯试者
package com.lwl.edu;
/**
* ⾯试⼈员2,它是来⾯试前端⼯程师的
*/
public class Interviewee2 extends Interview{
public void communicate() {
System.out.println("我是⾯试⼈员2,来⾯试前端⼯程师,我们聊的是前端相关内
容");
}
}
客户端测试类
package com.lwl.edu;
public class InterviewTest {
public static void main(String[] args) {
// ⾯试Java⼯程师
Interview interviewee1 = new Interviewee1();
interviewee1.process();
// ⾯试前端⼯程师
Interview interviewee2 = new Interviewee2();
interviewee2.process();
}
}