一、模板方法模式:
模板方法模式是基于继承的代码复用技术,模板方法所代表的行为称为顶级行为,其逻辑称为顶级逻辑。模板方法模式的结构可以如下所示:
二、Java语言描述:
package com.solid.pattern;
/**
* 模板方法模式
* @author solid
*
*/
public abstract class MoBan {
public abstract int getCount();
public abstract int getNum();
//模板方法
public void getTotal() {
int num = getNum();
int count = getCount();
int total = num * count;
System.out.println(total);
}
}
package com.solid.pattern;
public class Child1 extends MoBan {
public int getCount() {
return 1;
}
public int getNum() {
return 2;
}
}
package com.solid.pattern;
public class Child2 extends MoBan {
public int getCount() {
return 3;
}
public int getNum() {
return 4;
}
}
package com.solid.pattern;
public class Child3 extends MoBan {
public int getCount() {
return 5;
}
public int getNum() {
return 6;
}
}
package com.solid.pattern;
/**
* 测试模板方法模式
* @author solid
*/
public class TestMoBan {
public static void main(String[] args) {
MoBan moban1 = new Child1();
moban1.getTotal();
MoBan moban2 = new Child2();
moban2.getTotal();
}
}