已阅读5页,还剩18页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Java语言程序设计,第7章 多线程与异常处理,主讲:张思民,清华大学,第7章 多线程与异常处理,1、多线程的概念 2、线程的使用 3、线程同步 4、异常处理,7.1 多线程的概念,1、线程与多线程 2、线程的生命周期 3、线程的优先级,1、线程与多线程,什么是线程,进程与多线程的区别,Java的多线程机制,在Java编程中,每实例化一个线程对象,就创建一个虚拟的CPU,由虚拟CPU处理本线程数据。 每个Java程序都有一个主线程,即由main()方法所对应的线程。对于applet,浏览器即是主线程。 除主线程外,线程无法自行启动,必须通过其他程序来启动它。,2、线程的生命周期,线程要经历创建、就绪、运行、阻塞和死亡等5个状态 ,称为生命周期。,7.2 线程的使用方法,1、创建Thread子类构造线程 2、实现Runnable接口构造线程,基本方法: 创建线程类,再用其他类调用线程。,1、创建Thread子类构造线程,线程的创建与启动 (1)创建一个Thread类的子类; (2)在子类中重新定义自己的run()方法,这个中包含了线程要实现的操作; (3)用关键字new 创建一个线程对象; (4)调用start()方法启动线程。,示例,【例7-1】 创建二个Thread类的子类,然后测试它。 (见教材P205),这个例子说明了这样几个事实:,(1)创建独立执行线程比较容易,Java负责处理了大部分细节。 (2)各线程并发运行,共同争抢CPU资源,线程抢夺到CPU资源后,就开始执行,无法准确知道某线程能在什么时候开始执行。 (3)线程间的执行是相互独立的。 (4)线程独立于启动它的线程(或程序)。,2、 实现Runnable接口构造线程,1、实现Runnable接口 2、定义run( )方法 3、构造线程:Thread(Runnable对象名); 4、启动线程:线程对象.start( );,示例,【例7-2】 创建一个实现Runnable接口的线程类。(见教材P205),二种线程方式的用法区别,用多线程设计一个模拟火车站售票大厅的工作情形,1、应用线程的子类,class Sale extends Thread int s=100; public void run() System.out.println(getName() + “售机票第“ + s- +“号“); ,class E3 public static void main(String args) Sale t1=new Sale(); t1.start(); ,2、应用Runnale接口,class Threadsale implements Runnable int tickets=100 ; public void run() ,public class E9_4 public static void main(String args) Threadsale t=new Threadsale(); /实例化线程 Thread t1=new Thread (t,“第1售票窗口“); Thread t2=new Thread (t,“第2售票窗口“); Thread t3=new Thread (t,“第3售票窗口“); Thread t4=new Thread (t,“第4售票窗口“); t1.start(); t2.start(); t3.start(); t4.start(); ,线程的暂停和恢复,sleep()方法 该方法指定线程休眠一段时间。如下面语句所示: Thread thread1 = new Thread(); thread1.start(); try thread1.sleep(2000); catch(InterruptedException e) ,7.4 异常处理,异常(Exception)指程序运行过程中出现的非正常现象. 在Java中,把异常分为错误(Error)与异常(Exception)两大类。 异常情况(Exception)表示另外一种“非同寻常”的错误。这种错误通常是不可预测的。常见的异常情况包括内存不足,找不到所需的文件等。 系统异常见P225 表7.1,异常处理,try 可能出现异常的程序代码 catch(异常类1 变量1) 异常类1对应的异常处理代码 catch(异常类2 变量2) 异常类2对应的异常处理代码 . finally 无论异常是否发生都要执行的代码 ,异常示例:,class A public static void main(String args) int a=20,b=0; try System.out.println(a/b); catch(Excep
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年7月福建厦门市集美区国有资产投资有限公司招聘工作人员4人笔试历年典型考点题库附带答案详解试卷3套
- 2025山东济南城市投资集团有限公司招聘55人笔试历年备考题库附带答案详解试卷3套
- 2025安徽宿州首创水务有限责任公司招聘笔试表笔试历年常考点试题专练附带答案详解试卷3套
- 输电线路迁改项目信息化管理方案
- 混凝土搅拌站设备选型与配置方案
- 大豆加工技术优化方案
- 热力管网优化设计方案
- 逢格林公务员考试试题及答案
- 空间重构与土地利用规划
- 郴州市公务员考试考区试题及答案
- 少先队活动课《民族团结一家亲-同心共筑中国梦》课件
- 医疗机构信息系统安全防护预案
- 广州数控GSK 980TDc车床CNC使用手册
- 行政办事员五级(初级工)考试复习题及答案
- 2025届新高考高中语文统编教材经典篇目议论文素材汇编(必修上、下册)
- 工业控制技术 课件 0301-Y轴步进电机轴工艺对象组态
- 空气分离设备安装工程施工及验收规范
- YDT 5206-2023宽带光纤接入工程技术规范
- 水利安全生产风险防控“六项机制”右江模式经验分享
- 智能机器人技术的研究与发展
- 《传染病肝炎》课件
评论
0/150
提交评论