笔记:

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

代码:

package Coding;

public class Main_of_Coding {  //TestAbstract
public static void main(String[] args) {
new SubTemple().spendtime(); //[abstract类实现]打印1000以内的所有素数并输出时间
}
}
abstract class Temple{
public abstract void code(); //这个方法抽象,需要重写
public void spendtime(){ //这个方法不抽象,不用重写
long start =System.currentTimeMillis();
this.code();
long end=System.currentTimeMillis();
System.out.print("cost time is: "+ (end-start));
}
}
class SubTemple extends Temple{
@Override
public void code() {
boolean f=false;
for(int i=2;i<=1000;i++){
for(int j=2;j<=Math.sqrt(i);j++){
if(i%j==0){
f=true;
break;
}
}
if(!f){
System.out.print(" "+i);
if(i%10%7==0) System.out.println();
}
f=false;
}
}
}

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

 2 3 5 7
11 13 17
19 23 29 31 37
41 43 47
53 59 61 67
71 73 79 83 89 97
101 103 107
109 113 127
131 137
139 149 151 157
163 167
173 179 181 191 193 197
199 211 223 227
229 233 239 241 251 257
263 269 271 277
281 283 293 307
311 313 317
331 337
347
349 353 359 367
373 379 383 389 397
401 409 419 421 431 433 439 443 449 457
461 463 467
479 487
491 499 503 509 521 523 541 547
557
563 569 571 577
587
593 599 601 607
613 617
619 631 641 643 647
653 659 661 673 677
683 691 701 709 719 727
733 739 743 751 757
761 769 773 787
797
809 811 821 823 827
829 839 853 857
859 863 877
881 883 887
907
911 919 929 937
941 947
953 967
971 977
983 991 997
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. Ext.jsTree 向子节点添加叶子节点

    // 定义搜索节点树结构Store const nodeStore = Ext.create('Ext.data.TreeStore', { autoLoad : true, id : 'nodeSt ...

  2. React中的setState到底发生了什么?

    https://yq.aliyun.com/ziliao/301671 https://segmentfault.com/a/1190000014498196 https://blog.csdn.ne ...

  3. python 实现快速排序(面试经常问到)

    # -*- coding: UTF-8 -*- # 递归实现, 把过程打印出来便于理解 def quick_sort1(lis, start, end): if start >= end: re ...

  4. [Android] 分析一个CalledFromWrongThreadException崩溃

    1 问题描述 问题本身比较清晰简单,但推敲的过程中发现了不少有意思的东西. 在C++ SDK回调JNI至Java Observer函数中,直接操作了UI界面textView.setText(msg), ...

  5. React native 放大点击区域 hitSlop属性的使用

    在日常的需求中,如上图的加减按钮,可能写ui布局的时候没考虑实际的这个点击范围太小,不利于真机上用户点击到,如果加包裹层加padding的话又会影响原先定好的布局,或者不利于对齐. 那么可以用  hi ...

  6. selenium之定位详篇

    一.Web定位方法(find_elements返回元素list) 1.id: find_element_by_id()  # find_element_by_id("id") fi ...

  7. MySQL 新建用户,为用户授权,指定用户访问数据库

    1.登录MySQL mysql -u root -p 2.添加新用户(允许所有ip访问) create user 'test'@'*' identified by '123456';(test:用户名 ...

  8. centos 7.2安装git2.x版本

    前言 今天在我的centos7.2开发环境安装git2.x时候遇到了各种问题,还好一一解决,为方便大家,这里列出遇到的问题和解决办法,yum默认安装的git1.8版本的,公司git服务器在window ...

  9. 使用HSI配置系统时钟

    这里我就直接粘代码了.很简单.上节理解了 这也就能简单了. void HSI_SetSysClk( uint32_t RCC_PLLMul_x ) { __IO uint32_t HSIStatus ...

  10. We Need More Bosses CodeForces - 1000E (无向图缩点)

    大意: 给定无向连通图, 定义两个点$s,t$个价值为切断一条边可以使$s,t$不连通的边数. 求最大价值. 显然只有桥会产生贡献. 先对边双连通分量缩点建树, 然后求直径即为答案. #include ...