定义一个操作中的算法骨架,而将一些步骤延伸到子类中去,使得子类可以不改变一个算法的结构,即可重新定义该算法的某些特定步骤。这里需要复用的是算法的结构,也就是步骤,而步骤的实现可以在子类的实现。
模板方法模式的组成:
一 父类角色:提供模板。
一 子类角色:为模板提供实现。
例如:JUnit3中的TestCase类setUp(),tearDown()以及test开头的测试方法。总是按照setUp() -》 testXXX() -》 tearDown()的顺序执行。setUp以及tearDown的实现由子类去做。