您的位置:首页 > 编程语言 > Java开发

<设计模式15>模板方法模式

2016-09-18 22:49 441 查看
模板方法模式是经常使用的设计模式之一,其思想就是通过一个抽象类,即模板,来架构出大致的算法、操作的框架,而具体的方法则交给子类实现,这样,我们只需要实现子类,而整体的逻辑架构不需要我们去实现,即可使用。

下面给出一个简单的模板。

AbstractTemplate:即模板方法
public abstract class AbstractTemplate {

public void operate(){
method1();
method2();
}

public abstract void method1();

public abstract void method2();
}

这是一个抽象类,这个类中operate方发已经实现,也就是这个模板的逻辑,我们只要实现method1和method2。

ConcreteTemplate:具体实现
public class ConcreteTemplate extends AbstractTemplate {

@Override
public void method1() {
System.out.println("do somethings1");
}

@Override
public void method2() {
System.out.println("do somethings2");
}

}我们在这个子类中实现了两个抽象方法,而operate方法在模板中已经写好,因此当我们要操作时,即可实现出operate的逻辑
使用测试:
public class TemplateMethodTest {
public static void main(String[] args) {
AbstractTemplate template = new ConcreteTemplate();
template.operate();
}

}

结果:

do somethings1
do somethings2

这就是模板方法模式的基本使用。通过一个抽象的模板,先做出了部分逻辑,而通过子类的具体实现,来获得不同的结果。
它适用于,我们已经知道实现的逻辑顺序,但是我们不知道具体的实现方法,或者实现方法有很多种,这时,模板方法模式就很适用。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java 设计模式