码迷,mamicode.com
首页 > 编程语言 > 详细

java设计模式----模板方法模式

时间:2015-12-21 15:38:34      阅读:120      评论:0      收藏:0      [点我收藏+]

标签:

模板方法比较好理解,就是为了避免代码冗余,实现代码服用的功能。比如说最常见的泡茶和泡咖啡,两个之间有很多共同点,都需要烧水,都需要把水倒入杯中,那么这些重复的方法可以抽离出来,放在父类当中,至于两者之间不同的方法,写一个抽象类,让不同的子类去重写父类即可。

代码

模板类

package template;

public abstract class Template {
	public void prepare(){
		boilWater();
		brew();
		pourCup();
	}
	// 烧水
	public void boilWater() {
		System.out.println("把水烧开");
	}

	public abstract void brew();
// 倒入杯子中 public void pourCup() { System.out.println("倒入杯中"); } }

 泡咖啡

package template;

public class GetCoffee extends Template {

	@Override
	public void brew() {
		System.out.println("泡咖啡");
	}

}

 泡茶

package template;

public class GetTea extends Template {

	@Override
	public void brew() {
		System.out.println("泡茶");
	}


}

 测试类

package template;

public class Test {
	public static void main(String[] args) {
		//泡茶
		GetTea tea = new GetTea();
		tea.prepare();
		//泡咖啡
		GetCoffee coffee=new GetCoffee();
		coffee.prepare();
		
	}

}

 结果

把水烧开
泡茶
倒入杯中
把水烧开
泡咖啡
倒入杯中

 

java设计模式----模板方法模式

标签:

原文地址:http://www.cnblogs.com/JAYIT/p/5063432.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!