/
    抽象类的应用:模板设计模式

    /

    1. package com.atguigu.java2;
    2. import org.omg.Messaging.SyncScopeHelper;
    3. public class TemplateTest {
    4. public static void main(String[] args) {
    5. SubTemplate t = new SubTemplate();
    6. t.spendTime();
    7. }
    8. }
    9. abstract class Template{
    10. //计算某段代码执行所需要的时间
    11. public void spendTime(){
    12. long start = System.currentTimeMillis();
    13. code();//不确定的部分、易变的部分
    14. long end = System.currentTimeMillis();
    15. System.out.println("花费的时间为:"+ (end - start));
    16. }
    17. public abstract void code();//抽象方法
    18. }
    19. class SubTemplate extends Template{
    20. @Override
    21. public void code() {
    22. for(int i = 2;i<=1000;i++){
    23. boolean isFlag = true;
    24. for(int j = 2;j<=Math.sqrt(i);j++){
    25. if(i % j == 0){
    26. isFlag = false;
    27. break;
    28. }
    29. }
    30. if(isFlag){
    31. System.out.println(i );
    32. }
    33. }
    34. }
    35. }