zoukankan      html  css  js  c++  java
  • 【java】模板方法设计模式

    模板方法:在定义功能时,功能一部分是确认的,另一部分是不确认的或者后续会变化的。这时可以把不确定的部分暴露出去,定义成抽象类或者接口,由子类来完成。

    abstract class GetDuring
    {
    	public void Gettime()
    	{
    		long start=System.currentTimeMillis();
    		runcode();
    		long end=System.currentTimeMillis();
    		System.out.println(end-start);	
    	}
    	
    	public abstract void runcode();//把未知的代码运行函数定义为抽象方法,让子类实现
    }
    
    
    class DoGetDuring extends GetDuring //子类继承了父类,有了Gettime和runcode两个方法,但runcode为抽象方法,子类需要复写此方法才能变为非抽象类
    {
    	public void runcode()
    	{
    		for	(int i=1;i<=1000;i++)	
    		{
    			System.out.println(i);
    		}
    	
    	}
    
    }
    
    
    class  TmDemo
    {
    	public static void main(String[] args) 
    	{
    		DoGetDuring c1=new DoGetDuring();
    		c1.Gettime();//子类直接调用Gettime方法,Gettime方法会调用子类复写的runcode方法。
    	}
    }
    

      

  • 相关阅读:
    [loj3364]植物比较
    [loj3366]嘉年华奖券
    [atARC105F]Lights Out on Connected Graph
    [atARC105D]Let's Play Nim
    [atARC058F]Lroha Loves Strings
    [loj3347]有趣的旅途
    [atAGC001F]Wide Swap
    [cf1392I]Kevin and Grid
    [loj3340]命运
    [loj3046]语言
  • 原文地址:https://www.cnblogs.com/paulwinflo/p/8027634.html
Copyright © 2011-2022 走看看