一、什么是模板模式ide
摸版通俗的意思就是用于复制,在代码的世界中就是重用。想下若是一段代码里面有许多公用的代码,可是又要适用与不一样条件。你是否是还在不停的使用IF ELSE 呢?今天的模板模式会告诉你一种全新的解决方案。测试
二、南北汤圆,吃咸仍是甜spa
煮汤圆的大体步骤 1煮开水,2下汤圆,3放糖仍是放盐。咱们发现前2步是共用的,南北方的小伙伴都是这样子作的。那么第3放糖仍是放盐,除了if else 咱们应该怎么处理呢?模板
二、编写父类abstractclass
public abstract class TangYuan { private void boil(){ System.out.println("水开了"); } private void tangYuan(){ System.out.println("放汤圆"); } //控制下盐仍是糖 public void saltOrSugar(){ System.out.println("放盐"); } //烹饪 public void cook(){ boil(); tangYuan(); saltOrSugar(); } }
三、编写子类放糖static
public class SugarTangYuan extends TangYuan{ @Override public void saltOrSugar(){ System.out.println("放糖"); } }
四、编写子类放盐解决方案
public class SaltTangYuan extends TangYuan{ @Override public void saltOrSugar(){ System.out.println("放盐"); } }
五、编写测试co
public class Test { public static void main(String[] args) { SaltTangYuan saltTangYuan =new SaltTangYuan(); SugarTangYuan sugarTangYuan =new SugarTangYuan(); saltTangYuan.cook(); sugarTangYuan.cook(); } }
六、执行结果background
水开了
放汤圆
放盐
水开了
放汤圆
放糖
new
那么2种不一样的作法就作完了,要吃什么味道的,就new什么汤圆就能够了。