读书人

简略学习模板方法模式

发布时间: 2012-08-25 10:06:20 作者: rapoo

简单学习模板方法模式
昨天下午闲暇无事翻了一下《java与模式》,偶然看到模板方法模式这一章,猛然间明白自己以前常用这模式,居然不知道。现把模板方法模式学习记录一下。
模板方法模式示意性代码如下.
下面定义的是抽象模板类:

public class ConcreteClass extends AbstractFatherClass {/** * 实现抽象父类声明的抽象方法 */@Overrideprotected void doOperation1() {System.out.println("doOperation1 method");}/** * 实现抽象父类声明的抽象方法 */@Overrideprotected void doOperation2() {System.out.println("doOperation2 method");}}

上面的具体模板类实现了父类声明的基本方法doOperation1(),doOperation2()。
模板方法模式可以用一句很简单的话来表达:在父类的一个方法中定义一个算法的骨架,把具体的留给子类去做。
至于应该在什么阶段把处理分开来,哪些处理交给父类,哪些处理交给子类,这个要看实际情况然后去运用。
可以说模板方法模式是面向对象三大特性:继承,封装,多态 最简单的体现。

读书人网 >软件架构设计

热点推荐