一、介绍
所谓模板方法模式,就是提供一种方法的模板来实现一种规范,其他人可以利用这个模板定义自己的逻辑。
在Java编程中的应用,主要就是通过接口或者抽象类来实现的,抽象类中可以把逻辑函数声明为final类型,表示不能被重写,即不能改变逻辑。在接口中定义一个模板方法,模板方法中调用接口中的其他方法,其他方法既可以提供默认实现,也可以不提供默认实现。当一个类实现这个接口的时候,就可以通过重写接口中的方法来实现自己的变成逻辑。
二、代码实例
接口:
java
package code;
public interface myFirst {
default void templete(){
if(isTrue()){//如果判断成立,就执行逻辑1
fun1();
}
fun2();
fun3();
}
default void fun1(){
System.out.println("逻辑1执行");
}
default void fun2(){
System.out.println("逻辑2执行");
}
default void fun3(){
System.out.println("逻辑3执行");
}
default boolean isTrue(){
return true;//默认为true
}
}
java
package code;
public class myClass implements myFirst{
@Override
public void fun1() {
System.out.println("我自己的实现1");
}
@Override
public void fun2() {
System.out.println("我自己的实现2");
}
@Override
public void fun3() {
System.out.println("我自己的实现3");
}
@Override
public boolean isTrue() {
return true;
}
}