读书人

模板方式-简

发布时间: 2012-09-15 19:09:29 作者: rapoo

模板模式-简

模板模式的两种简单实现:

一:由抽象类定义整体执行流程(流程是一成不变的),并预留一未实现的方法,用于实现具体的变化的核心业务处理,

??? 然后定义子类实现核心业务处理的方法,将核心业务处理延迟到子类.

public abstract class TemplateClass

{

? public void execute()

? {

???? //"...."省略号部分代表执行顺序或框架一成不变的部分

???? ....

???? action();

???? ....

? }

? //未实现的核心业务处理方法

? public abstract void action();

}

-->子类继承TemplateClass并实现核心处理方法action,调用子类的execute方法即可(整体执行框架都是复用的)

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

二:(由spring的transactionTemplate总结)

??? 模板类不是抽象类,模板类定义好整体框架及整体执行流程,给执行方法(即例一中的execute方法的位置)预留一个

??? 回调接口ActionCallBack,并在方法内调用接口的处理核心业务的方法;此方法要另建一个类继承回调接口

??? 并实现核心业务处理方法,并将该类作为参数传给执行方法即可.

//核心业务处理回调接口

public interface ActionCallBack

{

? public abstract void action();

}

//模板类

public class TemplateClass

{

? public void execute(ActionCallBack act)

? {

??? ....

??? act.action();

??? ....

? }

}

-->创建子类实现回调接口ActionCallBack的核心业务处理方法,调用模板类的执行方法时传入子类.

?

?

?

?

?

?

?

?

读书人网 >软件架构设计

热点推荐