Java abstract类的基本使用 和 [abstract类实现]打印1000以内的所有素数并输出时间
笔记:
- /** 关键字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以内的所有素数并输出时间的更多相关文章
- java打印1000内的质数并用表格输出
<table width='500' border='1'><% int c=1; for(int i=2;i<=1000;i++){ int n=0; for(int j=2 ...
- java面试题0004-在一个类上是否可以用abstract和final同时加以修饰?
我们先用提干两个修饰词中的任意一个创建一个类 package components.javaTest.day4_20200910; /** * Question004: * java面试题0004-在 ...
- java的this static public protected private abstract interface 在python的对应,java python一些区别
1.因为工作的原因,最近使用了三个多月的java作为主力语言.很早之前在菜鸟教程也看过java文档两遍,但实践少,处于能看懂写出来不流畅的状态(对于java必须要略懂,不能能看到就头疼跳过,因为现在百 ...
- C++虚函数virtual,纯虚函数pure virtual和Java抽象函数abstract,接口interface与抽象类abstract class的比较
由于C++和Java都是面向对象的编程语言,它们的多态性就分别靠虚函数和抽象函数来实现. C++的虚函数可以在子类中重写,调用是根据实际的对象来判别的,而不是通过指针类型(普通函数的调用是根据当前指针 ...
- 为什么java的接口的方法是public abstract修饰?为什么属性是public static final 修饰?
为什么java的接口的方法是public abstract修饰? 1.首先要明白接口的定义和作用是什么: 接口定义:接口是一个全部由抽象方法组成的集合,里面都是抽象方法和常量,用interface修 ...
- JAVA类与对象(三)----类定义关键字详解
static 表示静态,它可以修饰属性,方法和代码块. 1.static修饰属性(类变量),那么这个属性就可以用类名.属性名来访问,也就是使这个属性成为本类的类变量,为本类对象所共有.这个属性就是全类 ...
- JAVA类与对象(二)----类定义基础
类是组成java程序的基本要素,是java中的一种重要的复合数据类型.它封装了一类对象的状态和方法,是这一类对象的原型.一个类的实现包括两个部分:类声明和类体,基本格式: class <clas ...
- Java中Super和final关键字以及异常类
1.final类不能有子类,也就谈不上继承的说法,如果用final修饰成员变量或者局部变量,那成了常量需要制定常量的值. 2.对象的上转型对象,上转型对象不能操作子类新增的成员变量,不能调用子类新增的 ...
- 详解Java中格式化日期的DateFormat与SimpleDateFormat类
DateFormat其本身是一个抽象类,SimpleDateFormat 类是DateFormat类的子类,一般情况下来讲DateFormat类很少会直接使用,而都使用SimpleDateFormat ...
随机推荐
- 打印网页js
====================================设置打印样式 <style media="print"> .Noprint { display: ...
- Go之gob包的使用
gob包("encoding/gob")管理gob流——在encoder(编码器,也就是发送器)和decoder(解码器,也就是接受器)之间交换的字节流数据(gob 就是 go b ...
- 网站架构(LNMP)
说明: 1)LNMP架构的组成(作用) 2)LNMP架构的部署 3)LNMP架构通讯原理 4)LNMP服务之间如何建立管理 nginx+php 运维负责 php+mysql 开发负责 5) 运 ...
- 什么是SSH 以及常见的ssh 功能
什么是SSH? 简单说,SSH是一种网络协议,用于计算机之间的加密登录.如果一个用户从本地计算机,使用SSH协议登录另一台远程计算机,我们就可以认为,这种登录是安全的,即使被中途截获,密码也不会泄露. ...
- 关于Django ModelForm渲染时间格式问题
关于Django ModelForm渲染时间格式问题 直接定义DateTimeInput或者DateTimeFile是不行的,渲染在html页面中的仍然是Input text类型 解决办法:自定义小部 ...
- Django Simple Captcha的使用
Django Simple Captcha的使用 1.下载Django Simple Captcha django-simple-captcha官方文档地址 http://django-simple- ...
- Hinton胶囊网络后最新研究:用“在线蒸馏”训练大规模分布式神经网络
Hinton胶囊网络后最新研究:用“在线蒸馏”训练大规模分布式神经网络 朱晓霞发表于目标检测和深度学习订阅 457 广告关闭 11.11 智慧上云 云服务器企业新用户优先购,享双11同等价格 立即抢购 ...
- mybatis相关知识积累
mybatis Statement Statement对象用于将 SQL 语句发送到数据库中. 实际上有三种 Statement 对象,它们都作为在给定连接上执行 SQL语句的包容器: Stateme ...
- javascript 数组去重的方法
前言:这是笔者学习之后自己的理解与整理.如果有错误或者疑问的地方,请大家指正,我会持续更新! 方法一 //注意有一个元素是空的 var test1 = [0, 0, 1, 1, 2, 'sss', 2 ...
- (六)easyUI之对话框窗口
一.拥有HTML的对话框 <%@ page language="java" contentType="text/html; charset=UTF-8" ...