package com.btp.t2;
/* 解决的问题:
* 当功能内部一部分实现是确定的,一部分实现是不确定的,这时可以把不确定的部分变量暴露出来,
* 让子类去实现
* 编写一个抽象父类,父类提供了多个子类的通用方法,并把一个或多个方法留给其子类实现,
* 就是一种模板模式
*/
public class TestTemplate
{
public static void main(String []args)
{
new SubTemplate().spendTime();
}
}
abstract class Template
{
abstract void code();//不确定的代码
public void spendTime()//测试code所花的时间
{
long start=System.currentTimeMillis();
this.code();
long end=System.currentTimeMillis();
System.out.println("花费的时间为:"+(end-start));
}
}
class SubTemplate extends Template
{
@Override
public void code()
{
boolean flag=false;
for(int i=2;i<=100000;i++)
{
for(int j=2;j<=Math.sqrt(i);j++)
{
if(i%j==0)
{
flag=true;
break;
}
}
if(!flag)
{
System.out.println(i);
}
flag=false;
}
}
}