笔记:

  1. /** 关键字abstract ,实现抽象类,相当于给出类的大纲,子类只管继承,但抽象类不可被实例化!
  2. * 1.抽象方法只保留方法的功能,而具体的执行,交给继承抽象类的子类,由子类重写所有的抽象方法.
  3. *
  4. * 2.abstract模板方法设计模式--
  5. * 抽象类作为多个子类的通用模板,子类在抽象类的基础上进行扩展/改造,
  6. * 但子类在总体上会保留抽象类的行为方式.
  7. */

代码:

  1. package Coding;
  2.  
  3. public class Main_of_Coding { //TestAbstract
  4. public static void main(String[] args) {
  5. new SubTemple().spendtime(); //[abstract类实现]打印1000以内的所有素数并输出时间
  6. }
  7. }
  8. abstract class Temple{
  9. public abstract void code(); //这个方法抽象,需要重写
  10. public void spendtime(){ //这个方法不抽象,不用重写
  11. long start =System.currentTimeMillis();
  12. this.code();
  13. long end=System.currentTimeMillis();
  14. System.out.print("cost time is: "+ (end-start));
  15. }
  16. }
  17. class SubTemple extends Temple{
  18. @Override
  19. public void code() {
  20. boolean f=false;
  21. for(int i=2;i<=1000;i++){
  22. for(int j=2;j<=Math.sqrt(i);j++){
  23. if(i%j==0){
  24. f=true;
  25. break;
  26. }
  27. }
  28. if(!f){
  29. System.out.print(" "+i);
  30. if(i%10%7==0) System.out.println();
  31. }
  32. f=false;
  33. }
  34. }
  35. }

结果:   (最后一位为7的话自动换行)

  1. 2 3 5 7
  2. 11 13 17
  3. 19 23 29 31 37
  4. 41 43 47
  5. 53 59 61 67
  6. 71 73 79 83 89 97
  7. 101 103 107
  8. 109 113 127
  9. 131 137
  10. 139 149 151 157
  11. 163 167
  12. 173 179 181 191 193 197
  13. 199 211 223 227
  14. 229 233 239 241 251 257
  15. 263 269 271 277
  16. 281 283 293 307
  17. 311 313 317
  18. 331 337
  19. 347
  20. 349 353 359 367
  21. 373 379 383 389 397
  22. 401 409 419 421 431 433 439 443 449 457
  23. 461 463 467
  24. 479 487
  25. 491 499 503 509 521 523 541 547
  26. 557
  27. 563 569 571 577
  28. 587
  29. 593 599 601 607
  30. 613 617
  31. 619 631 641 643 647
  32. 653 659 661 673 677
  33. 683 691 701 709 719 727
  34. 733 739 743 751 757
  35. 761 769 773 787
  36. 797
  37. 809 811 821 823 827
  38. 829 839 853 857
  39. 859 863 877
  40. 881 883 887
  41. 907
  42. 911 919 929 937
  43. 941 947
  44. 953 967
  45. 971 977
  46. 983 991 997
  47. cost time is: 30

Java abstract类的基本使用 和 [abstract类实现]打印1000以内的所有素数并输出时间的更多相关文章

  1. java打印1000内的质数并用表格输出

    <table width='500' border='1'><% int c=1; for(int i=2;i<=1000;i++){ int n=0; for(int j=2 ...

  2. java面试题0004-在一个类上是否可以用abstract和final同时加以修饰?

    我们先用提干两个修饰词中的任意一个创建一个类 package components.javaTest.day4_20200910; /** * Question004: * java面试题0004-在 ...

  3. java的this static public protected private abstract interface 在python的对应,java python一些区别

    1.因为工作的原因,最近使用了三个多月的java作为主力语言.很早之前在菜鸟教程也看过java文档两遍,但实践少,处于能看懂写出来不流畅的状态(对于java必须要略懂,不能能看到就头疼跳过,因为现在百 ...

  4. C++虚函数virtual,纯虚函数pure virtual和Java抽象函数abstract,接口interface与抽象类abstract class的比较

    由于C++和Java都是面向对象的编程语言,它们的多态性就分别靠虚函数和抽象函数来实现. C++的虚函数可以在子类中重写,调用是根据实际的对象来判别的,而不是通过指针类型(普通函数的调用是根据当前指针 ...

  5. 为什么java的接口的方法是public abstract修饰?为什么属性是public static final 修饰?

     为什么java的接口的方法是public abstract修饰? 1.首先要明白接口的定义和作用是什么: 接口定义:接口是一个全部由抽象方法组成的集合,里面都是抽象方法和常量,用interface修 ...

  6. JAVA类与对象(三)----类定义关键字详解

    static 表示静态,它可以修饰属性,方法和代码块. 1.static修饰属性(类变量),那么这个属性就可以用类名.属性名来访问,也就是使这个属性成为本类的类变量,为本类对象所共有.这个属性就是全类 ...

  7. JAVA类与对象(二)----类定义基础

    类是组成java程序的基本要素,是java中的一种重要的复合数据类型.它封装了一类对象的状态和方法,是这一类对象的原型.一个类的实现包括两个部分:类声明和类体,基本格式: class <clas ...

  8. Java中Super和final关键字以及异常类

    1.final类不能有子类,也就谈不上继承的说法,如果用final修饰成员变量或者局部变量,那成了常量需要制定常量的值. 2.对象的上转型对象,上转型对象不能操作子类新增的成员变量,不能调用子类新增的 ...

  9. 详解Java中格式化日期的DateFormat与SimpleDateFormat类

    DateFormat其本身是一个抽象类,SimpleDateFormat 类是DateFormat类的子类,一般情况下来讲DateFormat类很少会直接使用,而都使用SimpleDateFormat ...

随机推荐

  1. 打印网页js

    ====================================设置打印样式 <style media="print"> .Noprint { display: ...

  2. Go之gob包的使用

    gob包("encoding/gob")管理gob流——在encoder(编码器,也就是发送器)和decoder(解码器,也就是接受器)之间交换的字节流数据(gob 就是 go b ...

  3. 网站架构(LNMP)

    说明: 1)LNMP架构的组成(作用) 2)LNMP架构的部署 3)LNMP架构通讯原理 4)LNMP服务之间如何建立管理 nginx+php   运维负责 php+mysql   开发负责 5) 运 ...

  4. 什么是SSH 以及常见的ssh 功能

    什么是SSH? 简单说,SSH是一种网络协议,用于计算机之间的加密登录.如果一个用户从本地计算机,使用SSH协议登录另一台远程计算机,我们就可以认为,这种登录是安全的,即使被中途截获,密码也不会泄露. ...

  5. 关于Django ModelForm渲染时间格式问题

    关于Django ModelForm渲染时间格式问题 直接定义DateTimeInput或者DateTimeFile是不行的,渲染在html页面中的仍然是Input text类型 解决办法:自定义小部 ...

  6. Django Simple Captcha的使用

    Django Simple Captcha的使用 1.下载Django Simple Captcha django-simple-captcha官方文档地址 http://django-simple- ...

  7. Hinton胶囊网络后最新研究:用“在线蒸馏”训练大规模分布式神经网络

    Hinton胶囊网络后最新研究:用“在线蒸馏”训练大规模分布式神经网络 朱晓霞发表于目标检测和深度学习订阅 457 广告关闭 11.11 智慧上云 云服务器企业新用户优先购,享双11同等价格 立即抢购 ...

  8. mybatis相关知识积累

    mybatis Statement Statement对象用于将 SQL 语句发送到数据库中. 实际上有三种 Statement 对象,它们都作为在给定连接上执行 SQL语句的包容器: Stateme ...

  9. javascript 数组去重的方法

    前言:这是笔者学习之后自己的理解与整理.如果有错误或者疑问的地方,请大家指正,我会持续更新! 方法一 //注意有一个元素是空的 var test1 = [0, 0, 1, 1, 2, 'sss', 2 ...

  10. (六)easyUI之对话框窗口

    一.拥有HTML的对话框 <%@ page language="java" contentType="text/html; charset=UTF-8" ...