JAVA计时器

问题描述

[code=Java]importjava.io.*;importjava.util.*;classWatch{publicvoidstart(){GregorianCalendarnow=newGregorianCalendar();startTime=now.getTimeInMillis();}publicvoidshowElapsedTime(){GregorianCalendarnow=newGregorianCalendar();longcurrentTime=now.getTimeInMillis();longdifference=(currentTime-startTime)/1000;System.out.print(difference);System.out.println("secondshavaelapsed.");}publiclonggetElapsedTime(){GregorianCalendarnow=newGregorianCalendar();longcurrentTime=now.getTimeInMillis();return(currentTime-startTime);}privatelongstartTime;}classStopWatch{publicstaticvoidmain(Stringargs[])throwsException{BufferedReaderkeyboard=newBufferedReader(newInputStreamReader(System.in));Watchsw=newWatch();/*System.out.println("HitEnteronyourwayout!");keyboard.readLine();sw.start();System.out.println("Don'tforgettohitEnterwhenyougetback!");keyboard.readLine();sw.showElapsedTime();*/longminiTime=92233720368547L;System.out.println("HitEntertostart...");//一定要有提示,不然很难有反应的keyboard.readLine();System.out.println("Firstcircle...");sw.start();keyboard.readLine();longcircleTime=sw.getElapsedTime();sw.start();if(circleTime<miniTime)miniTime=circleTime;System.out.println("Secondcircle...");keyboard.readLine();circleTime=sw.getElapsedTime();sw.start();if(circleTime<miniTime)miniTime=circleTime;System.out.println("Thirdcircle...");keyboard.readLine();circleTime=sw.getElapsedTime();if(circleTime<miniTime)miniTime=circleTime;System.out.print("Thebesttimeis:");System.out.println(miniTime/1000);}}/code]初学JAVA2天,先编写一个小程序玩玩,呵呵,在JAVA的道路上还有很远要走啊!

解决方案

解决方案二:
沙发。。。。。。
解决方案三:
classStopwatch前加上public
解决方案四:
其实不加也是可以的吧,顺便问下,加public跟不加有什么区别呢?
解决方案五:
不加默认是default访问权限
解决方案六:
访问权限不同,如下:当前类同一个包子孙类不同包Public√√√√Protected√√√×Default√√××Private√×××
解决方案七:
加油啊!积分~
解决方案八:
2天就会这么多啊,牛,加油
解决方案九:
恩,其实我之前学过c++,现在转学习java的,java里多了default?那是什么?有谁能解释不?
解决方案十:
这个是默认的访问权限范围访问权限不同,如下:当前类同一个包子孙类不同包Public√√√√Protected√√√×Default√√××Private√×××如果有个类是private修饰的,那么在其他包中的类中就不可引用这个类
解决方案十一:
C++中不是也有默认的访问控制吗,struct的成员默认是public,class默认是private。java中public--公开的,protected--同包和子类公开,默认--向同包公开,private--私有的。
解决方案十二:
顶引用2楼huntor的回复:

classStopwatch前加上public

解决方案十三:
其实可以写成一个类,start和stop写成方法
解决方案十四:
引用9楼cwjieno1的回复:

这个是默认的访问权限范围访问权限不同,如下:当前类同一个包子孙类不同包Public√√√√Protected√√√×Default√√××Private√×××如果有个类是private修饰的,那么在其他包中的类中就不可引用这个类

楼主很厉害啊
解决方案十五:
呵呵,对啊,c++中默认是private,java是default。c++中的权限应该是这样的吧:父类publicprotectedprivate继承方式publicpublicprotected不可用protectedprotectedprotected不可用privateprivateprivate不可用
解决方案:
楼主牛啊,两天又如此成就,我之前什么语言都没有学过,现在学了一个月了,感觉还是没学到什么
解决方案:
其实我之前学过c++对现在学习java有很大帮助的,所以学起来比较快的,呵呵,一起努力啊

时间: 2024-10-10 12:23:19

JAVA计时器的相关文章

在 Java 应用程序中计划重复执行的任务

所有类型的 Java 应用程序一般都需要计划重复执行的任务.企业应用程序需要计划每日 的日志或者晚间批处理过程.一个 J2SE 或者 J2ME 日历应用程序需要根据用户的约定计划 闹铃时间.不过,标准的调度类 Timer 和 TimerTask 没有足够的灵活性,无法支持通常需 要的计划任务类型.在本文中,Java 开发人员 Tom White 向您展示了如何构建一个简单通 用的计划框架,以用于执行任意复杂的计划任务. 我将把 java.util.Timer 和 java.util.TimerT

jAVA 中的定时器

 在 Java 应用程序中定时执行任务 Java 中Timer 类的简洁用法 所有类型的 Java 应用程序一般都需要计划重复执行的任务.企业应用程序需要计划每日的日志或者晚间批处理过程.一个 J2SE或者 J2ME 日历应用程序需要根据用户的约定计划闹铃时间.不过,标准的调度类 Timer 和 TimerTask 没有足够的灵活性,无法支持通常需要的计划任务类型.在本文中,Java 开发人员 Tom White 向您展示了如何构建一个简单通用的计划框架,以用于执行任意复杂的计划任务. 我将把

Android应用闪屏页延迟跳转的三种写法

闪屏页也称之为欢迎页.在打开一个App时,我们第一眼看到的往往是一个闪屏页面,之所以叫闪屏页,是因为它出现之后会短暂地停留几秒钟再跳转到其他页面.闪屏页除了使用户体验更好外,还能给app留出初始化数据的时间.下面,是我总结的闪屏页的三种写法. 准备工作 打开Android Studio,新建一个projectMyStudy,新建一个SplashActivity并在清单文件中将其设置为启动Activity.在布局文件中将SplashActivity的背景设置为一张图片(可以是手机壁纸). <?xm

java 编程-如何用java在后台页面开发一个计时器

问题描述 如何用java在后台页面开发一个计时器 主要用于考试系统计时,时间结束,页面自动提交到服务器求各位大神帮忙讲一下,我是一个初学者,谢谢大家了! 解决方案 直接前台获取js的倒计时就可以了,但是保险一点的话,后台也可以同时计时,通知前台自动提交试卷. 解决方案二: 客户端轮询服务器时间,到点提交就可以了. 解决方案三: 用JS做定时器就行了 var s = 59;//用来记录秒,因为需求是从59开始的. var m = residueTime-1;//用来记录分钟 var w = set

java毫秒计时器,读取开始到结束的每一个时间

问题描述 引用SageZk的代码做了个计时器,现在想读取从开始到结束的每一个时间,比如0.000,0.001,0.002,0.003...但发现用了System.nanoTime()之后,还是有一些时间丢失了,这是什么原因呢?该如何解决?publicclassnanoTimeframeextendsJFrame{//privatelongtime=(long)(0.3*60*1000L);//倒计时时间(单位毫秒)privatelongtime=(long)(10*1000L);privateJ

Java资料:Swing中的事件处理详细资料

监听器:ActionListener 方 法:actionPerformed 事 件:ActionEvent ● String getActionCommand() actioncommand是控件内部的一个字符串,用于标识控件的状态. 此函数可以取得控件的状态,从而决定到底该做什么. ● int getModifiers() 取得"产生此事件时,用户同时按下的组合键" ● long getWhen() 取得"产生此事件时的时间戳" 事件产生原因:点击按钮,在列表框

通过日志监控并收集Java应用程序性能数据

引言 系统日志是应用程序问题诊断及运行维护的重要工具.Logback.Log4j 是常用于 Java 平台的日志记录 API. 目前大部分产品只是将系统重要参数.状态的变化及异常信息通过日志输出.本文将要介绍的 Perf4j 是一款专门用 于 Java 服务器端代码计时.记录日志和监控结果的开源工具包.Perf4j 对常用日志工具包进行了扩展,能够将得到的原 始性能数据进行统计并发布到可定制的输出源,如控制台.日志文件.JMX 等.Perf4j 提供了多种方式与 Java 代码集成 ,开发和系统

JAVA图形操作中FPS的计算

FPS:即帧 /秒(frames per second)的缩写,也称为帧速率.是指1秒钟时间里刷新的图片的帧数,也可以理解为图形处理器每秒钟能够刷新几次.如果具体到手机上就是指每秒钟能够播放(或者录制)多少格画面.同时越高的帧速率可以得到更流畅.更逼真的动画.每秒钟帧数(fps)越多,所显示的动作就会越流畅. 在绝大多数图形程序中(以游戏类为典型),执行效率都以FPS作为评估标准. 由于目前JAVA方面缺少相关用例,故完成功能如下图(在本机测试中,最大fps设定为500,实际达到FPS效率在ID

java线程简介 -共享对数据的访问

共享变量 要使多个线程在一个程序中有用,它们必须有某种方法可以互相通信或共享它们的结果. 让线程共享其结果的最简单方法是使用共享变量.它们还应该使用同步来确保值从一个线程正确传播到另一个线程,以及防止当一个线程正在更新一些相关数据项时,另一个线程看到不一致的中间结果. 线程基础中计算素数的示例使用了一个共享布尔变量,用于表示指定的时间段已经过去了.这说明了在线程间共享数据最简单的形式是:轮询共享变量以查看另一个线程是否已经完成执行某项任务. 存在于同一个内存空间中的所有线程 正如前面讨论过的,线