版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、会计学1异常异常(ychng)的捕获及处理的捕获及处理第一页,共20页。查阅查阅(chyu)API文档文档2ObjectThrowableRuntimeException Error Exception IOExceptionJava程序中的异常程序中的异常(ychng)现象也采用了面向对象的思想,现象也采用了面向对象的思想,所有的异常所有的异常(ychng)都使用类来描述。都使用类来描述。第1页/共20页第二页,共20页。3Error 类:应用程序在运行期间发生的严重错误。例如类:应用程序在运行期间发生的严重错误。例如(lr),虚,虚拟机内存用尽、堆栈溢出等。(程序员管不了)拟机内存用尽、堆
2、栈溢出等。(程序员管不了)Exception 类:几十个子类,描述了不同类型的异常。类:几十个子类,描述了不同类型的异常。非检查性异常:编译器在编译程序时不进行检查,到运行时才非检查性异常:编译器在编译程序时不进行检查,到运行时才会显现。例如会显现。例如(lr)RuntimeException,像数组越界异常、整数除,像数组越界异常、整数除以零异常等。这类异常应该通过反复测试尽量避免,不应该靠异以零异常等。这类异常应该通过反复测试尽量避免,不应该靠异常处理机制来处理,主要是由程序员经验不足或思维不够缜密造常处理机制来处理,主要是由程序员经验不足或思维不够缜密造成的。成的。检查性异常:编译器在编
3、译程序时必须进行异常处理,否则编检查性异常:编译器在编译程序时必须进行异常处理,否则编译时不能通过。例如译时不能通过。例如(lr)IOException,像数据库连接失败、用,像数据库连接失败、用光盘时用户没插入光盘等。这类异常程序员是无法避免的,应由光盘时用户没插入光盘等。这类异常程序员是无法避免的,应由异常处理机制处理。异常处理机制处理。第2页/共20页第三页,共20页。创建类创建类创建对象创建对象初始化初始化Java库类中的类库类中的类SUN程序员程序员程序员程序员用户创建的类用户创建的类程序员程序员程序员程序员程序员程序员异常类异常类SUN出现异常的语句出现异常的语句JVM(自动)(自
4、动)4处理异常时编程人员做什么?处理异常时编程人员做什么?给异常类对象给异常类对象(duxing)起名字起名字抓它抓它处理它处理它抛它抛它第3页/共20页第四页,共20页。public class ExceptionDemo01 public static void main(String args)System.out.println(* 计算开始计算开始 *) ;int i = 10 ;int j = 0 ;int temp = i / j ;System.out.println(两个两个(lin )数字相除的结果:数字相除的结果: + temp) ;System.out.println(
5、* 计算结束计算结束 *) ; 1.异常异常(ychng)范例范例ExceptionDemo01.java第4页/共20页第五页,共20页。关键字作用关键字作用try:捕捉异常:捕捉异常(ychng)catch:处理异常:处理异常(ychng)finally:异常:异常(ychng)的统的统一出口一出口2.异常异常(ychng)处理处理try-catch-finally6第5页/共20页第六页,共20页。public class ExceptionDemo02 public static void main(String args)System.out.println(* 计算开始计算开始(k
6、ish) *) ;int i = 10 ;int j = 0 ;System.out.println(* 计算结束计算结束 *) ; 范例范例(fnl)ExceptionDemo02.javatry int temp = i / j ;/ 此处产生此处产生(chnshng)了异常了异常 System.out.println(两个数字相除的结果:两个数字相除的结果: + temp) ;catch ( ArithmeticException ae ) System.out.println(出现异常了:出现异常了: + ae) ;第6页/共20页第七页,共20页。8编程:使用键盘输入两个数据,进行除
7、法操作。编程:使用键盘输入两个数据,进行除法操作。分析分析(考虑异常情况考虑异常情况):没有没有(mi yu)输入参数或个数不够输入参数或个数不够数组超出绑定异常数组超出绑定异常输入的参数不是数字输入的参数不是数字数字格式化异常数字格式化异常除数为零除数为零算术异常算术异常第7页/共20页第八页,共20页。public class ExceptionDemo04public static void main(String args)int i , j ;tryString str1 = args0 ;/ 可能有异可能有异常常String str2 = args1 ;/ 可能有异常可能有异常i
8、= Integer.parseInt( str1 );j = Integer.parseInt( str2 );int temp = i / j ;/ 可能有异可能有异常常System.out.println(相除的结果相除的结果(ji gu): + temp); catch( ArithmeticException e)System.out.println(算算术异常:术异常: + e) ;catch( NumberFormatException e)System.out.println(数数字转换异常:字转换异常: + e);catch( ArrayIndexOutOfBoundsExce
9、ption e)System.out.println(数组越界异常数组越界异常: + e) ;catch( Exception e)System.out.println(异常:异常: + e) ;System.out.println(* 计算结束计算结束 *) ;9范例范例(fnl)ExceptionDemo04.java第8页/共20页第九页,共20页。public class ExceptionDemo03 public static void main(String args)System.out.println(* 计算计算(j sun)开始开始 *) ;int i = 10 ;int
10、 j = 2 ;tryint temp = i / j ; System.out.println(两个数字相除的结果:两个数字相除的结果: + temp) ;catch(ArithmeticException ae) System.out.println(出现异常了:出现异常了: + ae) ;finally System.out.println(不管是否出现异常,都执行此代码不管是否出现异常,都执行此代码) ;System.out.println(* 计算计算(j sun)结束结束 *) ; 10第9页/共20页第十页,共20页。tryopenDB( );readDB( );closeDB(
11、 );catch(Exception e) System.out.println(出现异常了出现异常了: + e) ;11tryopenDB( );readDB( );catch(Exception e) System.out.println(出现异常了出现异常了: + e) ;finally closeDB( );第10页/共20页第十一页,共20页。3.异常信息异常信息(xnx)的输出的输出12public class ExceptionDemo05 public static void main(String args)System.out.println(* 计算计算(j sun)开始
12、开始 *) ;int i = 10 ;int j = 0 ;try int temp = i / j ;/ 此处产生了异常此处产生了异常 System.out.println(相除的结果:相除的结果: + temp) ;catch( Exception e) e. printStackTrace( );System.out.println(* 计算计算(j sun)结束结束 *) ; 第11页/共20页第十二页,共20页。13第12页/共20页第十三页,共20页。class Math/定义除法定义除法(chf)类类public int div( int i , int j ) int temp
13、 = i / j ;/此处有可能此处有可能出现异常出现异常return temp ;public class ThrowsDemopublic static void main(String args)Math m = new Math( ) ;/ 实例化实例化Math类对象类对象 System.out.println(除法除法(chf)操作:操作: + m.div( 10 , 0 ) ; 范例范例(fnl)ThrowsDemo.javathrows Exceptiontrycatch( Exception e)e.printStackTrace( ) ;/ 打印打印(d yn)异常异常第13
14、页/共20页第十四页,共20页。throw:有:有2个功能个功能Java中异常处理是分层次的,中异常处理是分层次的,throw可以把捕获到的异常抛可以把捕获到的异常抛 到上一层,由上一层进行异常处理。到上一层,由上一层进行异常处理。 格式:格式:throw 异常类对象;异常类对象;以前处理的异常都是由系统以前处理的异常都是由系统(JVM)自动实例化的,不用自动实例化的,不用new. 现在,可以使用现在,可以使用throw关键字在方法中手动抛出关键字在方法中手动抛出(po ch)一个异常。一个异常。第14页/共20页第十五页,共20页。范例范例(fnl)ThrowDemo02.javaclass
15、 Mathpublic int div(int i , int j) int temp = 0 ;tryint temp = i / j ; /此处有可能出现异常此处有可能出现异常catch ( Exception e)throw e ;return temp ;public class ThrowDemo02public static void main(String args)Math m = new Math( ) ;trySystem.out.println(除法操作除法操作(cozu): + m.div(10,0) ;catch(Exception e)System.out.prin
16、tln(异常产生:异常产生: + e) ;第15页/共20页第十六页,共20页。public class ThrowDemo01public static void main(String args)trythrow new Exception(自己自己(zj)抛着抛着玩的。玩的。) ; catch(Exception e)System.out.println(e) ;范例范例(fnl)ThrowDemo01.java第16页/共20页第十七页,共20页。说明:在一般的开发中说明:在一般的开发中trycatchfinally、throw、throws联合使用联合使用(shyng)的情况是最多的情况是最多的。的。第17页/共20页第十八页,共20页。class Mathpublic int div(int i , int j) throws ExceptionSystem.out.println(* 计算开始计算开始 *) ;int temp = 0 ;/定义局部变量定义局部变量trytemp = i / j ; /此处有可能出此处有可能出现异常现异常(ychng)catch ( Exception e)throw e ;finally System.out.println(* 计算结束计算结束 *) ; retur
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 金东区曹宅镇麻堰水库清淤应急工程招标文件
- 2026年山东省泰安市高考语文五模试卷含解析
- 医学26年:AI辅助病理诊断进展 查房课件
- 浅析提升数控机床机械加工效率的途径
- 医学26年:神经科学交叉学科进展 查房课件
- 徐州市云龙区遴选公务员考试真题解析
- 【2025】吕梁市离石区交口街道工作人员招聘考试真题
- 医学26年:呼吸重症监护室建设 查房课件
- 语文01卷(上海专用)-(参考答案)七年级下册语文期末考试
- GEO优化系统测评:2026年企业GEO选型决策框架与TOP3平台深度解析
- 《危重症患儿管饲喂养护理》中华护理学会团体标准解读
- 《国家综合性消防救援队伍队列条令(试行)》课件
- 2024年贵州省高考化学试题含答案解析
- 2025-2030年中国核桃种植深加工行业竞争格局与前景发展策略分析报告
- 《冻鲅鱼、冻鲐鱼》标准及编制说明
- 古诗鉴赏(简答题各题型答题技巧与答题规范)-2025年北京高考语文一轮复习(原卷版)
- 加油站施工施工组织设计方案
- 2024年西藏自治区中考语文试题卷
- 汽车配件物流运输服务方案
- 英语专业四级英语写作讲解
- CTD申报资料撰写模板:模块三之3.2.S.4原料药的质量控制
评论
0/150
提交评论