【行为型模式】模板方法模式(template method)之23种java设计模式
2016-05-06 09:17
846 查看
BankTemplateMethod抽象类
public abstract class BankTemplateMethod {
//具体方法
public void takeNumber(){
System.out.println("取号排队");
}
public abstract void transact(); //办理具体的业务 //钩子方法
public void evaluate(){
System.out.println("反馈评分");
}
public final void process(){ //模板方法!!!
this.takeNumber();
this.transact();
this.evaluate();
}
}
测试 类client
public class Client {
public static void main(String[] args) {
BankTemplateMethod btm = new DrawMoney();
btm.process();
//采用匿名内部类
BankTemplateMethod btm2 = new BankTemplateMethod() {
@Override
public void transact() {
System.out.println("我要存钱!");
}
};
btm2.process();
BankTemplateMethod btm3 = new BankTemplateMethod() {
@Override
public void transact() {
System.out.println("我要理财!我这里有2000万韩币");
}
};
btm3.process();
}
}
class DrawMoney extends BankTemplateMethod {
@Override
public void transact() {
System.out.println("我要取款!!!");
}
}
相关文章推荐
- 《java入门第一季》之面向对象(重头戏多态)
- 《java入门第一季》之面向对象(重头戏多态)
- 怎样判读安装java jvm是32位还是64位的
- POI操作EXCEL03和EXCEL07以上版本
- Set、Map集合
- Eclipse安装Genymotion插件问题
- java中怎么在获取的系统时间上提前一周一月一年或推迟一周,一月或者一年
- Java中ArrayList类的用法与源码完全解析
- Java用于校验一个字符串是否是合法的JSON格式
- Spring之AOP
- java线程——synchronized的4种用法
- 【java设计模式】之 模板方法(Template Method)模式
- 69个Spring面试题
- 69个Spring面试题
- java.util.Date和java.sql.Date的区别和相互转化
- JAVA虚拟机之——类加载机制
- org.springframework.beans.NotWritablePropertyException
- java.lang.NoSuchMethodError: com.opensymphony.xwork2.ActionContext.get(Ljava/lan
- struts2--开发模式控制台错误信息
- JAVA_GET请求URL