5.10 模板方法模式

模式定义

模板方法模式(Template Method Pattern),定义一个操作中的算法骨架,而将一些实现步骤延迟到子类当中。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。

模板方法模式是代码复用的一项基本的技术,在类库中尤其重要,它遵循“抽象类应当拥有尽可能多的行为,应当拥有尽可能少的数据”的重构原则。

在JUNIT中我们写的测试类就是通过模版方法来调用的,先执行setUp(),然后是:测试方法,最后执行tearDawn();

 

模式使用

模版方法模式编程:

1.设计抽象类,在抽象类中定义要执行的方法

2.在模版方法中,加入抽象定义方法的执行步骤

3.在实现类中具体实现

 

UML类图

 

 

类图代码

AbstractClass
public abstract class AbstractClass {
    //定义好算法结构
    public void templateMethod(){
        method1();
        method2();
        method3();
    }
    
    abstract public void method1(); 
    
    abstract public void method2(); 
    
    abstract public void method3(); 
}
ConcreteClass
Client
public class Client {

    public static void main(String[] args) {
        AbstractClass as = new ConcreteClass();   
        as.templateMethod();  
    }

}

 

posted on 2012-05-19 22:27  随心浪子  阅读(131)  评论(0编辑  收藏  举报

导航