- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第7异常处理
7章 异常处理 内容 Java异常的概念 Java异常的分类 异常的捕获和处理 运行期出现的错误 观察错误的名字和行号最重要 异常的概念 例子chap07\TestEx0.java Java异常是Java提供的用于处理程序中错误的一种机制。 所谓错误是指在程序运行的过程中发生一些异常事件(如:除0溢出,数组下标越界,所要读取的文件不存在)。 设计良好的程序应该在异常发生时提供处理这些错误的方法,使得程序不会因为异常的发生而阻断或产生不可预见的结果。 Java程序的执行过程中如出现异常事件,可以生成一个异常类,该异常类封装了异常事件的信息并将被提交给Java运行时的系统,这个过程称为抛出(throw)异常。 当Java运行时系统接收到异常对象时,会寻找能处理这一异常的代码并把当前异常对象交给其处理,这一过程称为捕获(catch)异常。 异常的概念 Public void someMethod( ) throws SomeException{ if (someCondition( )){ throw new SomeException(“错误原因”); } } 异常的分类 J2SDK中定义了很多异常类,这些类对应了各种各样可能出现的异常事件 异常的分类 异常的捕获和处理 Try{ //可能抛出异常的语句 }catch(SomeException1 e ) { …….. }catch(SomeException2 e ) { ….. }finally{ …….. } 异常的捕获和处理 异常的捕获和处理 Try语句 Try{….}语句指定了一段代码,该代码是一次捕获并处理例外的范围。 在执行过程中,该段代码可能会产生并抛出一种或多种异常类型的对象,它后面的catch语句要分别对这些异常做相应的处理。 如果没有列外产生,所有的catch代码都被略过不执行。 异常的捕获和处理 Catch语句 在catch语句块中是对异常进行处理的代码,每个try语句块可以伴随一个或多个catch语句,用于处理可能产生的不同类型的异常对象。 在catch中声明的异常对象(catch(SomeException e))封装了异常事件发生的信息,在catch语句块中可以使用这个对象的一些方法获取这些信息。 例如: getMessage()方法,用来的到有关异常事件的信息。 printStackTrace()方法,用来跟踪异常事件发生时执行堆栈的内容。 异常的捕获和处理 Finally语句为异常处理提供一个统一的出口,使得在控制流程转到程序的其他部分以前,能够对程序的状态作统一的管理。 无论try所指定的程序块中是否抛出列外,finally所指定的代码都要被执行。 通常在finally语句中可以进行资源的清除工作,如:关闭打开的文件,删除临时文件。 异常的捕获和处理 异常的捕获和处理 Public class Test{ public static void main(String args[]){ Test test = new Test( ); try { test.method1(); }catch (SomeException e){ e.printStackTrace(); } } public void method1() throws SomeException{method2();} public void method2() throws SomeException{method3();} public void method3() throws SomeException{ throw new SomeException(“SomeException occur in method3”) ;} } 异常的捕获和处理 Public class Test { public static void main(String args[]){ String[][] s = new String[5][]; try { s[1][0]=“hello”; s[1][1]=“你好”; }catch (NullPointerException e){ System.out.println(“数组元素没有正确实例化”); } try { s[5]=new String[3]; s[5][1]=“hello”; }catch (Except
您可能关注的文档
最近下载
- 人教版四年级上册数学培优辅差计划.pdf VIP
- 比较思想政治教育(第二版) 001 比较思想政治教育(第二版) 第一章.pptx VIP
- 《声学基础》课件 .ppt VIP
- 2024-2025学年上海市陆行中学高二上学期9月月考数学试卷含详解.docx VIP
- 学校食堂从业人员培训资料全.pptx VIP
- 比较思想政治教育(第二版) 010 比较思想政治教育(第二版) 第十章.pptx VIP
- 2024版新教材九年级化学上册知识清单(教师版).pdf VIP
- 湖南省岳阳市临湘市第六中学2023-2024学年七年级上学期开学考试 数学试题.docx VIP
- 《计算机应用基础(第6版)Windows11+WPS Office》全套教学课件.pptx
- 比较思想政治教育(第二版) 013 比较思想政治教育(第二版) 第十三章.pptx VIP
文档评论(0)