设计模式之模版方法模试

2019-04-13 16:53发布

模板方法模式

模板方法模式比较简单, 其实就是对一些不可变的业务进行封装, 对可变的部分提供扩展。
那扩展当然就是接口或者抽象类了。 但考虑到又有不可变的部分, 所一抽象类就成了不二的选择。

一个抽象模板类通常包括
1. 基本方法
2. 模板(abstract)方法   Java 示例代码 package com.picc.cl; public abstract class TemplateMethod { /**定义一些抽象行为,放到子类去实现*/ abstract void getUp();//起床 abstract void faceWash();//洗脸 abstract void eat();//吃饭 abstract void startWork();//上班 /**模板方法,给出了逻辑的骨架,而逻辑的组成是一些相应的抽象操作,它们都推迟到子类实现*/ public void TemplateMethodTotal(){ getUp();//起床 faceWash();//洗脸 eat();//吃饭 startWork();//上班 } public static void main(String[] args) { TemplateMethod method = new ZS(); method.TemplateMethodTotal(); } } class ZS extends TemplateMethod{ @Override void eat() { System.out.println("张三吃饭"); } @Override void faceWash() { System.out.println("张三洗脸"); } @Override void getUp() { System.out.println("张三起床"); } @Override void startWork() { System.out.println("张三开始工作"); } }

运行结果    张三起床
   张三洗脸
   张三吃饭
   张三开始工作