读书人

设计方式回顾之三:模板方法模式(Temp

发布时间: 2012-11-14 10:12:19 作者: rapoo

设计模式回顾之三:模板方法模式(TemplateMethod)

设计模式回顾系列文章: 主要针对工作中常用常见的设计模式进行整理、总结,同时分享以供大家拍砖。

------------------------------------------------

模板方法模式(TemplateMethod)

定义一个操作中算法的骨架,而将一些步骤延迟到子类中,不改变算法的结构而重定义它的步骤。

允许定义可变的子步骤,同时保持基本过程一致。

TemplateMethod模式由一个抽象类组成,这个抽象类定义了需要覆盖的基本TemplateMethod方法。每个从这个抽象类派生的具体类将为此抽象类实现新方法。

?

程序实现:

抽象类Algorithm.java:定义算法执行步骤(templateMethod方法),以及部分步骤的实现(doStep2)。

public static void main(String[] args){Algorithm algorithm=new CustomAlgorithm1();algorithm.templateMethod();algorithm=new CustomAlgorithm2();algorithm.templateMethod();}

此时因多态机制,会分别执行不同的算法步骤。

?

举例:JdbcTemplate、HibernateTemplate、SocketTemplate等可以使用模板的场景。

?

读书人网 >软件开发

热点推荐