欢迎来到天天文库
浏览记录
ID:44979237
大小:439.50 KB
页数:49页
时间:2019-11-06
《第五章异常处理与多线程》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第五章异常处理与多线程邱航qiuhang@uestc.edu.cn电子科技大学计算机科学与工程学院主要内容第一节异常处理1第二节多线程编程2第四节字符串与其它数据类型的转换电子科技大学计算机科学与工程学院第一节异常处理异常基础异常处理基本结构用户自定义异常电子科技大学计算机科学与工程学院1.1异常基础异常定义了程序中遇到的非致命的错误,而不是编译时的语法错误,如程序要打开一个不存在的文件、网络连接中断、操作数越界、装载一个不存在的类等。classA{floatdevide(intx,inty){returnx/y;}publicstaticvoidmain(Stringargs[]){
2、floatm=devide(5,0);System.out.println(m);}}电子科技大学计算机科学与工程学院Java异常处理类构成电子科技大学计算机科学与工程学院1.2异常处理基本结构try{//可能产生异常的代码}catch(异常类型异常实例){//异常处理}finally{//最终处理方法}注意:finally的意思是无论try语句中是否出现异常、出现什么类型的异常,finally关键字中包含的语句都必须执行电子科技大学计算机科学与工程学院publicclassTestException{publicstaticvoidmain(Stringargs[]){try{int
3、result=newTest().devide(3,0);System.out.println("Theresultis"+result);}catch(Exceptione){System.out.println(e.getMessage());}System.out.println("programisrunninghere,thatisnormal");}}classTest{publicintdevide(intx,inty){intresult=x/y;returnx/y;}}结果:/byzeroProgramisrunninghere,thatisnormal电子科技大学计
4、算机科学与工程学院发生异常后,会执行catch中的代码,做异常处理,完成后会继续执行catch以后的代码。特别注意的是,一个try语句后边可能有多个catch,根据发生的具体异常,去匹配相应的catch语句。try{}catch(Exceptione1){}catch(Exceptione2){}电子科技大学计算机科学与工程学院1.3自定义异常与Throw关键字在实际应用中,我们通常使用Exception的子类来描述任何特定的异常Exception类是所有异常类的父类用户自定义异常必须继承Exception类classDevideByMinusExceptionextendsExcep
5、tion{intdevisor;publicDevideByMinusException(Stringmsg,intdevisor){super(msg);this.devisor=devisor;}publicintgetDevisor(){returndevisor;}电子科技大学计算机科学与工程学院Java通过throw关键字抛出异常对象格式:throw异常对象;在一个方法内使用throw关键字抛出异常对象,如果该方法内部没有用try…catch语句对这个异常进行处理,则此方法应声明抛出异常,而由该方法的调用者负责处理电子科技大学计算机科学与工程学院Throws关键字在定义方法时
6、,用throws声明该方法可能发生的异常,这样,调用者在调用该方法时,必须用try…catch语句进行处理,否则编译无法通过这主要考虑类的编写者和使用者不是同一人的情况,为了让使用者清楚可能存在的错误,强制他必须写异常处理电子科技大学计算机科学与工程学院classTest{publicintdevide(intx,inty)throwsException{…………………..}}classTestException{publicstaticvoidmain(Stringargs[]){try{……………………}catch(Exceptione){…………………..}}}电子科技大学计算机
7、科学与工程学院第二节多线程编程理解和创建线程多线程同步线程生命的控制线程的调度程序设计举例电子科技大学计算机科学与工程学院2.1理解和创建线程线程的概念创建线程的两种方法后台线程与联合线程多线程应用电子科技大学计算机科学与工程学院2.1.1线程的概念进程:在多任务系统中,每个独立执行的程序称为进程,也就是“正在执行的程序”线程:一个进程包含一个或多个线程,一个线程就是一个程序内部的一条执行线索在单线程中,程序代码按调用顺序一次往下执行,当主函数
此文档下载收益归作者所有