模版方法设计模式

原创 2013年12月05日 22:19:32




    在定义功能时,功能的一部分是确定的,但是有一部分是不确定,而确定的部分在使用不确定的部分,那么这时就将不确定的部分暴露出去,由该类的子类去完成。确定的部分封装为模板,不再改动。这种方式,模版方法设计模式。

示例:

    需求:获取一段程序运行的时间。

    原理:获取程序开始和结束的时间并相减即可。获取时间:System.currentTimeMillis();

//获取时间的方法为固定方法,将其封装,由其子类实现
abstract class GetTime
{	
	public final void getTime()
	{
		long start = System.currentTimeMillis();

		runcode();

		long end = System.currentTimeMillis();

		System.out.println("毫秒:"+(end-start));
	}	
	public abstract void runcode();
}


class SubTime extends GetTime
{
	public void runcode()
	{
		
		for(int x=0; x<4000; x++)
		{
			System.out.print(x);
		}
	}
}

class  TemplateDemo
{
	public static void main(String[] args) 
	{
		//GetTime gt = new GetTime();
		//由子类完成该方法
		SubTime gt = new SubTime();
		gt.getTime();
	}
}


相关文章推荐

设计模式教程-模版方法

  • 2009年02月16日 16:12
  • 1.16MB
  • 下载

C++设计模式——模版方法

临近毕业,很多人都会到人才网发布简历以寻求符合自己要求的岗位。登陆人才网,系统会给我们提供一份统一的模板,我们只需要按照要求填写个人信息、教育背景、工作经历、项目经验等内容就可以了。虽然大家都是使用相...
  • swqqcs
  • swqqcs
  • 2014年09月09日 16:05
  • 489

大话设计模式笔记(七)——模版方法模型

第十章 模版方法模型 含义 在父类中定义一个操作的算法骨架,将算法的一些步骤放到子类去实现。模版方法使得子类不改变算法结构的情况下即可重定义算法的特定步骤。 UML 需求:现有试卷一份,通过模版方...
  • luo4105
  • luo4105
  • 2017年08月01日 18:34
  • 255

java设计模式-模版方法

模版方法: 在抽象类中定义任务执行顺序,把每一步的实现延迟到子类中 /** * * @author ietown * */ public abstract class AbstractG...
  • cin_ie
  • cin_ie
  • 2015年09月04日 18:01
  • 318

黑马程序员_模版方法设计模式

------- android培训、java培训、期待与您交流! ---------- 模版方法设计模式 第一部分 1、模版方...

模版方法设计模式简单应用

java中大概有21种设计模式,先看第一种,模版方法设计模式。 从一个简单的例子引出模版方法设计模式: 用for、while、do-while三种循环分别测出1到100的和; 一般的写法是:pu...
  • stanxl
  • stanxl
  • 2015年03月14日 15:18
  • 352

十四、模版方法设计模式

1. 模版方法模式介绍在面向对象开发过程中,通常我们会遇到这样的一个问题:我们知道一个算法的关键步骤,并确定了这些步骤的执行顺序。但是某些步骤的具体实现是未知的,或者说某些步骤的实现与具体的环境相关。...

java设计模式之——模版方法

例如,需要把book类包装成xml,json等格式的数据,book类: public class Book { private String bookName; private int page...

设计模式培训之七:模版方法

一、定义 定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。Template Method使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 二、应用场景 ...

spring中的设计模式-模版方法

1.什么是模版方法
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:模版方法设计模式
举报原因:
原因补充:

(最多只允许输入30个字)