java实现23种设计模式之模版方法模式

先看代码:ide

package com.ceshi13; public abstract class AbstractCalculator { /*主方法,实现对本类其它方法的调用*/
    public final int calculate(String exp,String opt){ int array[] = split(exp,opt); return calculate(array[0],array[1]); } /*被子类重写的方法*/
    abstract public int calculate(int num1,int num2); public int[] split(String exp,String opt){ String array[] = exp.split(opt); int arrayInt[] = new int[2]; arrayInt[0] = Integer.parseInt(array[0]); arrayInt[1] = Integer.parseInt(array[1]); return arrayInt; } }
package com.ceshi13; public class Plus extends AbstractCalculator { @Override public int calculate(int num1, int num2) { return num1 + num2; } }
package com.ceshi13; public class StrategyTest { public static void main(String[] args) { String exp = "8+8"; AbstractCalculator cal = new Plus(); int result = cal.calculate(exp, "\\+"); System.out.println(result); } }

运算结果:spa

上面抽象类的代码中有calculate方法,是能够经过不一样的子类继承而且重写的,这就至关于模版code

定义了模版,至于具体是怎么子的经过子类实现blog

相关文章
相关标签/搜索