JAVA--模版方法模式(Template Method)--设计模式十四

来源:互联网 发布:身份证正则表达式 java 编辑:程序博客网 时间:2024/05/17 03:38


1,概述:

       (1)模版方法模式的意图是在一个方法里实现一个算法,并推迟定义算法的某些步骤,
从而让其他类重新定义他们  
           (2) 模版方法模式是指:一个抽象类中,有一个主方法,再定义 1......n 个方法,也可以是
抽象的,也可以是实际的方法,定义一个类,继承该抽象类,重写抽象方法,通过调用抽象类
,实现对子类的调用,如图:



  就是在AbstractCalculator类中定义了一个主方法calculate,calculate调用spilt等,
Plus和Minus分别继承AbstractCalculator类,通过对AbstractCalculator的调用实现
对子类的调用,如例:






   我跟踪下这个小程序的执行过程:首先将exp和"\\+"做参数,调用AbstractCalculator类里的calculate(String,String)方法,在calculate(String,String)里调用同类的split(),之后再调用calculate(int ,int)方法,从这个方法进入到子类中,执行完return num1 + num2后,将值返回到AbstractCalculator类,赋给result,打印出来。正好验证了我们开头的思路。



1 0
原创粉丝点击