模板方法设计模式
抽象类体现的就是一种模板模式的设计,抽象类左肋多个子类的模板,子类在抽象的基础上进行扩展和改造。
某个部分是固定的,通用的,就把它写到抽象类里,易变的写到子类中,这就是一种模板模式。
public class TemplateMethod {
public static void main(String[] args) {
SubTamplate s1 = new SubTamplate();
s1.sendTime();
}
}
abstract class Template{
public void sendTime() {
long start = System.currentTimeMillis();
code();
long end = System.currentTimeMillis();
System.out.println("最终花费时间为:" + (end-start));
}
public abstract void code();
}
class SubTamplate extends Template{
@Override
public void code() {
for(int i = 2 ; i<100 ; i++) {
boolean flag = true;
for(int j = 2 ; j <= Math.sqrt(i) ; j++) {
if(i%j == 0) {
flag = false;
break;
}
}
if(flag) {
System.out.println(i);
}
}
}
}