首页 > 代码库 > 抽象类_模板方法设计模式

抽象类_模板方法设计模式

1 抽象类作为多个子类的通用模版,父类提供一些通用的方法,并把几个不确定的方法交给子类实现。

package p1;public class TestTemplate {    public static void main(String[] args) {        Template t = new SubTemplate();        System.out.println("所花费的时间:" + t.useTime());    }}abstract class Template {    public abstract void code();    public double useTime() {        double start = System.currentTimeMillis();        this.code();        double end = System.currentTimeMillis();        return end - start;    }}class SubTemplate extends Template {    public void code() {        boolean flag = false;        // 找出1-1000以内的所有素数        for (int i = 2; i <= 1000; i++) {            for (int j = 2; j <= Math.sqrt(i); j++) {                if (i % j == 0) { // 结束内层循环可能是执行if语句后break,或者j的值已经全部试完,所以                    // 要用flag加以区分,                    flag = true;                    break;                }            }            if (!flag == true) {                System.out.println("1-500素数包含:" + i);            }            flag = false; // 前面有flag = true;        }    }}

抽象类_模板方法设计模式