Java 模板设计/方法模式

模板设计模式:

就是定义一个算法的骨架,而具体的算法延迟到子类中来实现。


优点:
使用模板方法模式,在定义算法骨架的同时,可以灵活的实现具体的算法,满足用户灵活多变的需求


缺点:
如果算法骨架要修改的话,则需要修改抽象类。

实例: 计算一个程序的运行时间。

public class test6 {
    public static void main(String[] args) {
        Demo de = new Demo();
        long result = de.getTime();
        System.out.println(result+" 毫秒");
    }
}

/**
 * 获取程序运行时间(抽象类,具体要运行的程序让子类来实现,父类只提供接口)
 */
abstract class GetTime{
    //获取时间差
    public final long getTime() {
        long start = System.currentTimeMillis();
        code();
        long end = System.currentTimeMillis();
        return end - start;
    }

    // 需要运行的程序,让子类来具体实现。
    public abstract void code();
}

/**
 * 继承抽象类,实现其中的方法。(实现具体 要运行的程序)
 */
class Demo extends GetTime {

    @Override
    public void code() {
        for (int i = 0; i < 1000000; i++) {
            System.out.println("123");
        }
    }
}

猜你喜欢

转载自blog.csdn.net/Leo_01169/article/details/85321986