- 模板设计模式
- 模版设计模式概述
- 模版方法模式就是定义一个算法的骨架,而将具体的算法延迟到子类中来实现
- 优点
- 使用模版方法模式,在定义算法骨架的同时,可以很灵活的实现具体的算法,满足用户灵活多变的需求
- 缺点
- 如果算法骨架有修改的话,则需要修改抽象类
- 代码实现过程
- 定义一个计算时间模板
- 模版设计模式概述
public abstract class CountTime { public Long getCodeTime() { Long startTime = System.currentTimeMillis(); code(); Long endTime = System.currentTimeMillis(); return endTime - startTime; } public abstract void code();}
-
-
- 定义for循环执行1000万次需要的时间
-
public class ForTime { public static void main(String[] args) { CountTime countTime = new CountTime() { @Override public void code() { for (int i = 0; i < 1000; i++) { System.out.println(i); } } }; Long time = countTime.getCodeTime(); System.out.println(" " + time); }}
-
-
- 定义拷贝视频的逻辑
-
public class CopyFile { public static void main(String[] args) { CountTime countTime = new CountTime() { @Override public void code() { try { FileOutputStream fos = new FileOutputStream("copy.avi"); FileInputStream fis = new FileInputStream("test.avi"); int len = 0; byte[] buf = new byte[1024]; while ((len = fis.read(buf)) != -1) { fos.write(buf, 0, len); } } catch (Exception e) { e.printStackTrace(); } } }; Long codeTime = countTime.getCodeTime(); System.out.println("用时:" + codeTime); }}