任务设计考试系统中的倒计时

上传人:wj****e 文档编号:157565441 上传时间:2022-09-30 格式:PPT 页数:24 大小:683.50KB
收藏 版权申诉 举报 下载
任务设计考试系统中的倒计时_第1页
第1页 / 共24页
任务设计考试系统中的倒计时_第2页
第2页 / 共24页
任务设计考试系统中的倒计时_第3页
第3页 / 共24页
资源描述:

《任务设计考试系统中的倒计时》由会员分享,可在线阅读,更多相关《任务设计考试系统中的倒计时(24页珍藏版)》请在装配图网上搜索。

1、任务任务11设计考试系统中的倒计时设计考试系统中的倒计时Java程序设计项目化教程西安电子科技大学出版社学习目标学习目标知识目标知识目标能力目标能力目标深入理解进程与线程的概念。深入理解进程与线程的概念。掌握线程创建的方法。掌握线程创建的方法。理解线程状态间的转换、优先级及其调度。理解线程状态间的转换、优先级及其调度。了解线程的同步在实际中的应用。了解线程的同步在实际中的应用。素质目标素质目标协调能力、团队合作的能力协调能力、团队合作的能力接受新知识、自主学习的能力接受新知识、自主学习的能力 多线程技术的应用多线程技术的应用 Java程序设计项目化教程西安电子科技大学出版社11.1 任务描述任

2、务描述本次任务是设计倒计时。考试系统中的倒计时功能是必不可少的功能之一,当考生成功登录考试系统后,点击【开始考试】,则计时系统开始倒计时。当考试时间结束时,系统将弹出相应的对话框提示并退出考试。如图11-1,在我们所设计的考试系统中,时间的显示在整个界面的上方,使得考生能清晰地看到时间的显示,把握好考试时间。Java利用线程技术可以实现时间的动态刷新和显示,从而可以实现时间的同步显示。Java程序设计项目化教程西安电子科技大学出版社11.2 技术要点技术要点l 线程的创建线程的创建 l 线程的管理线程的管理 Java程序设计项目化教程西安电子科技大学出版社程程序序,进进程,程,多线程多线程程程

3、序序(Program)储储存存于外存于外存中的可中的可执行文件执行文件 Program进进程程(Process)载载入入内存内存中的可中的可执行文件称为执行文件称为 Process线程线程(Thread)Process 中的一段程式中的一段程式码执码执行行轨迹称为轨迹称为 Thread,是是计算机计算机中最小的中最小的执行单执行单位位。HDDMemoryProgramProcessThreadJava程序设计项目化教程西安电子科技大学出版社线程和进程线程和进程线程和进程的主要差别体现在如下两个方面:线程和进程的主要差别体现在如下两个方面:(1 1)同样作为基本的执行单元,线程的划分比进程小。)

4、同样作为基本的执行单元,线程的划分比进程小。(2 2)每个进程都有一段专用的内存区域。与此相反,线程却)每个进程都有一段专用的内存区域。与此相反,线程却共享内存单元(包括代码和数据),通过共享的内存单元共享内存单元(包括代码和数据),通过共享的内存单元来实现数据交换、实时通信与必要的同步操作。来实现数据交换、实时通信与必要的同步操作。Java程序设计项目化教程西安电子科技大学出版社线程的创建线程的创建 JavaJava中提供了两种创建线程的方法中提供了两种创建线程的方法l 扩展扩展ThreadThread类类l 实现实现RunnableRunnable接口来创建线程。接口来创建线程。其中其中T

5、hreadThread类和类和RunnableRunnable接口都定义在包接口都定义在包java.langjava.lang中。中。Java程序设计项目化教程西安电子科技大学出版社 扩展扩展Thread类创建线程类创建线程 Java程序设计项目化教程西安电子科技大学出版社创建和执行线程步骤创建和执行线程步骤l 步骤一、步骤一、创建一个创建一个Thread类的子类,该类必须重写类的子类,该类必须重写Thread类的类的run()方法。方法。class 类名称类名称 extends Thread /从从Thread类扩展出子类类扩展出子类 成员变量;成员变量;成员方法;成员方法;public v

6、oid run()/重写重写Thread类的类的run()方法方法 线程处理的代码线程处理的代码 l 步骤二、步骤二、创建该子类的对象,即创建一个新的线程。创建线程对象时会自动调用创建该子类的对象,即创建一个新的线程。创建线程对象时会自动调用Thread类定义的相关构造函数。类定义的相关构造函数。l 步骤三、步骤三、用构造函数创建新对象之后,这个对象中的有关数据被初始化,从而进入线程用构造函数创建新对象之后,这个对象中的有关数据被初始化,从而进入线程的新建状态。直到调用了该对象的的新建状态。直到调用了该对象的strat()方法。方法。l 步骤四、线程对象开始运行,并自动调用相应的步骤四、线程对

7、象开始运行,并自动调用相应的run()方法。方法。Java程序设计项目化教程西安电子科技大学出版社举例举例ThreadDemo1.java 1.class MyThread extends Thread2.public void run()3.for(int i=1;i=10;i+)4.System.out.println(this.getName()+:+i);5.6.7.public class ThreadDemo18.public static void main(String args)9.MyThread t=new MyThread();10.t.start();11.12.Ja

8、va程序设计项目化教程西安电子科技大学出版社举例举例ThreadDemo2.java 1.class MyThread extends Thread2.MyThread(String str)3.super(str);4.5.public void run()6.for(int i=1;i=5;i+)7.System.out.println(this.getName()+:+i);8.9.10.public class ThreadDemo211.public static void main(String args)12.MyThread t1=new MyThread(线程线程1);13.

9、MyThread t2=new MyThread(线程线程2);14.t1.start();15.t2.start();16.for(int i=1;i=5;i+)17.System.out.println(Thread.currentThread().getName()+:+i);18.19.Java程序设计项目化教程西安电子科技大学出版社实现实现Runnable接口创建线程接口创建线程 JavaJava提供了提供了RunnableRunnable接口来完成创建线程的操作。在接口来完成创建线程的操作。在RunnableRunnable接口中,只包含一接口中,只包含一个抽象的个抽象的run()

10、run()方法。方法。public interface Runnablepublic interface Runnable public abstract void run()public abstract void run()利用利用RunnableRunnable接口创建线程,首先定义一个实现接口创建线程,首先定义一个实现RunnableRunnable接口的类,在该类中必接口的类,在该类中必须定义须定义run()run()方法的实现代码。方法的实现代码。class MyRunnable implements Runnableclass MyRunnable implements Runn

11、able public void run()public void run()/新建线程上执行的的代码新建线程上执行的的代码 Java程序设计项目化教程西安电子科技大学出版社实现实现Runnable接口创建线程接口创建线程l直接创建实现了直接创建实现了RunnableRunnable接口的类的对象并不能生成线程接口的类的对象并不能生成线程对象,必须还要定义一个对象,必须还要定义一个ThreadThread对象,通过使用对象,通过使用ThreadThread类类的构造函数去新建一个线程的构造函数去新建一个线程,并将实现并将实现RunnableRunnable接口的类接口的类的对象引用作为参数传递

12、给为的对象引用作为参数传递给为ThreadThread类的构造函数,最后类的构造函数,最后通过通过start()start()方法来启动新建线程。基本步骤如下:方法来启动新建线程。基本步骤如下:MyRunnableMyRunnable r=new MyRunnable();r=new MyRunnable();Thread t=new Thread(r);Thread t=new Thread(r);r.start r.start;Java程序设计项目化教程西安电子科技大学出版社举例举例RunnerDemo.java1.class MyRunner implements Runnable2.p

13、ublic void run()3.String s=Thread.currentThread().getName();4.for(int i=1;i=10;i+)5.System.out.println(s+:+i);6.7.8.public class RunnerDemo9.public static void main(String args)10.MyRunner r1=new MyRunner();11.Thread t1=new Thread(r1,线程线程1);12.Thread t2=new Thread(r1,线程线程2);13.t1.start();14.t2.start

14、();15.for(int i=1;i=0)while(testtime=0)h=testtime/3600;h=testtime/3600;m=testtime%3600/60;m=testtime%3600/60;s=testtime%60;s=testtime%60;StringBuffer sb=new StringBuffer();StringBuffer sb=new StringBuffer();sb.append(sb.append(考试剩余时间考试剩余时间:+f.format(h)+:+:+f.format(h)+:+f.format(m)+:+f.format(s);f.f

15、ormat(m)+:+f.format(s);lefttimer.setText(sb.toString();lefttimer.setText(sb.toString();try try Thread.sleep(1000);Thread.sleep(1000);catch(Exception ex)catch(Exception ex)testtime =testtime -1;testtime =testtime -1;JOptionPane.showMessageDialog(null,t JOptionPane.showMessageDialog(null,t考试时间到考试时间到,结束考试结束考试!););System.exit(0);System.exit(0);11.3 任务实施任务实施(模仿实践模仿实践)

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!