Template模版方法的设计模式

Template模版方法的设计模式

package _312after_366before.src.javaTeacher.abstract_class.template;

/*
抽象类的应用:模仿方法的设计模式
 */
public class TemplateTest {

    public static void main(String[] args) {
        //这个是最后一步(第三步),测试
        Template t = new SubTemplate();
        t.SpendTime();

    }
}

//-----------------------------------------------------------------------------------------------


abstract class Template {
    //第一步,确定开头和结尾时间,创建一个"没用的abstract"的方法,让下面重写
    public void SpendTime() {
        long start = System.currentTimeMillis();

        code();//不确定,易变的

        long end = System.currentTimeMillis();

        System.out.println("执行这代码的时间= " + (end - start));
    }

    public abstract void code();//这个没被用到,下面重写了这个方法
}

//-----------------------------------------------------------------------------------------------

class SubTemplate extends Template {
    //第二部,继承Template,并且开头不写abstract,而是去重写他的abstract的方法
    // 因为这个是继承abstract的类,所以,要重写他的方法
    @Override
    public void code() {
        for (int i = 0; i < 100; i++) {
            System.out.println(i);
        }
    }
}

posted on 2022-06-27 18:14  陈嘻嘻-  阅读(44)  评论(0)    收藏  举报

导航