Java面向对象程序设计与系统开发第12章 线程处理ppt课件_第1页
Java面向对象程序设计与系统开发第12章 线程处理ppt课件_第2页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、面向对象程序设计与系统开发第12章 线程处置驱动义务一采用线程类Thread实现每隔一分钟就提示用户运用了ATM机的时间。 目的及知识点线程的根本概念11StringBuffer类2线程sleep()方法的运用 3 走近线程 Thread线程类 Thread是java.lang包里的管理线程的类。它的每一个实例对象就对应着一个线程,一个线程能承当一项独立的任务。/* * MyThread类承继了Thread类所以也成为了一个线程类 * */public class MyThread extends Thread /* * 这个方法是线程类运转的入口,要实现逻辑必需求重写这个方法 */publi

2、c void run()System.out.println(我是线程在说话); Thread线程类 Thread是java.lang包里的管理线程的类。它的每一个实例对象就对应着一个线程,一个线程能承当一项独立的任务。/* * MyThread类承继了Thread类所以也成为了一个线程类 * */public class MyThread extends Thread /* * 这个方法是线程类运转的入口,要实现逻辑必需求重写这个方法 */public void run()System.out.println(我是线程在说话);启动线程 一个新创建的线程并不自动开场运转。他必需调用它的sta

3、rt()方法。调用start()方法使线程处于可运转形状,这意味着它可以由JVMJava虚拟机调度并执行。但这并不意味着线程就会立刻运转。public class Test public static void main(String args) MyThread p = new MyThread();/生成了一个线程,放到了内存中p.start();/留意,这里调用Thread中的start()方法, 该方法将去调用run()方法System.out.println(我是主程序在说话);运转结果:我是主程序在说话我是线程在说话线程中的join方法那么怎样描画两个并行的义务在某个时候要求其中一

4、个义务必需求另一个义务完成的根底上才干完成,就好像我看书的时候被送快递的打断,必需求先出去领了快递让送快递的义务完成才干继续看书。要描画这样的情况,可以运用线程中的join()方法实现。public class Test public static void main(String args) MyThread p = new MyThread();/生成了一个线程,放到了内存中p.start();try p.join();/将这个线程参与到主程序当中,只需当这个线程执行 完以后主程序才继续向下执行 catch (InterruptedException e) e.printStackTrac

5、e();System.out.println(我是主程序在说话);运转结果:我是线程在说话我是主程序在说话线程中的sleep方法线程根据其优先级由虚拟机自行判别某个时间段该哪个线程执行,普通来说我们是不用去干涉的。但现实生活中存在着需求干涉线程的情况,还是比如我在飞机上,我要每隔1个小时打个盹让线程停顿,在Java言语中如何描画?这就要用到线程中的sleep方法。public class MyThread extends Thread /* * 这个方法是线程类运转的入口,要实现逻辑必需求重写这个方法 */public void run()trysleep(1000);/参数是毫秒,1000表

6、示1秒catch(Exception e)System.out.println(我是线程在说话);义务虚现1分析业务流程23分析笼统出各个类; 按照类图构建线程类;45实现类中详细方法 ;在工程中生成一个线程,并使其运转 ;驱动义务二假设上一节的义务中TimeThread线程类曾经承继了其他类,由于Java只能单承继,那么我们没有方法再承继Thread类,此时我们可以用线程接口Runnable来实现一样的功能。目的及知识点线程接口Runnable的运用 11如何终止线程的运转 2Runnable接口由于Java不能用extends实现多承继,假设一个类曾经承继了其他类而还想成为一个线程的话,就

7、要用到java.lang包里的Runnable接口。 /*Driver类承继于People类,实现了一个Runnable接口*/public class Driver extends People implements Runnable在实现这个接口的同时必需求实现接口中的run方法如下所示:/*Driver类承继于People类,实现了一个Runnable接口*/public class Driver extends People implements Runnablepublic void run()终止一个线程 当run方法执行完之后,该线程就自动停顿运转。因此我们想让线程不断执行的时候我们普通是采用设置run方法为一个死循环:while(true)要想终止如上的一个被设置为死循环的线程,只需将其true条件改动为flase即可。如上一个义务中我们设置5分钟线程自动终了只需求添加如下黑体字部分代码,更改while循环的条件值。public void run() while (!isEnd) /假设线程没有终了try sleep(60000);/线程睡1分钟,1000为1秒 catch (InterruptedException e) e.printStackTrace();number+;/计数器添加1System

温馨提示

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

评论

0/150

提交评论