首页 > 其他 > 详细

Design Pattern:模板方法模式

时间:2020-06-21 18:29:32      阅读:65      评论:0      收藏:0      [点我收藏+]

模板方法模式

在一个方法在定义了一个算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。

  • 抽象类专注算法本身,子类提供完整实现
  • 代码复用最大化
  • 技术分享图片

例子

abstract class AbstractClass{
	final void templateMethod(){
		operation1();
		operation2();
		concreteOperation();
		hook();
	}
	
	abstract void operation1();
	abstract void operation2();
	final void concreteOperation(){
	 // 实现
	}
	void hook(){}
}

模板方法里可以有三种函数:

  • 抽象方法
    • 子类必须提供具体实现
  • 具体实现
    • 提供了默认实现,子类可以选择覆盖
  • 钩子
    • 可选步骤

Design Pattern:模板方法模式

原文:https://www.cnblogs.com/cpaulyz/p/13173341.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!