java第七章_异常处理(基础篇)

java第七章_异常处理(基础篇)

ID:16791419

大小:118.50 KB

页数:32页

时间:2018-08-24

java第七章_异常处理(基础篇)_第1页
java第七章_异常处理(基础篇)_第2页
java第七章_异常处理(基础篇)_第3页
java第七章_异常处理(基础篇)_第4页
java第七章_异常处理(基础篇)_第5页
资源描述:

《java第七章_异常处理(基础篇)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第七章异常处理§1.1错误处理的方法概述§1.2Java的异常处理机制§1.3创建自己的异常类§1.1错误处理的方法概述传统的程序运行时错误处理异常处理1传统的程序运行时错误处理如C语言:函数返回值=某个可能会执行失败的函数();if(函数返回值==表示该函数执行成功的值){正常代码}elseif(函数返回值==代表错误情况1的值){处理错误情形1}elseif(函数返回值==代表错误情况2的值){处理错误情形2}……1传统的程序运行时错误处理函数返回值=某个可能会执行失败的函数();if(函数返回值!=表示该函数执行成功的值){Switch(函数返回值){case错误

2、情况1的值:处理错误情形1case错误情况2的值:处理错误情形2……}}else{正常代码}1传统的程序运行时错误处理缺点:1)整个程序代码穿插错误处理代码,使得条理性和可读性差;2)对错误处理程序难以集中管理,难以保证程序的一致性;3)对于返回值的意义,要借助于文档,程序维护困难。2异常处理如C++,JAVA语言:就是在异常发生时,由编程语言提供的某种机制通知应用程序,让应用程序决定如何进行下一步的处理。传统方式:1)负责测出错误的发生(程序设计者)2)进行错误的处理异常处理方式:2)进行错误的处理(程序设计者)2异常处理特点:1)可将错误处理代码和常规代码隔离开来,

3、提高程序的可读性和可维护性;2)可以处理一组错误,进行集中管理,保证程序的一致性。3)将异常事件分类,体现了良好的层次性。§1.2Java的异常处理机制Java语言用异常为它的程序提供了错误处理方式,为方法的异常终止和出错处理提供了清晰的接口。异常和异常对象异常的处理过程1异常和异常对象异常:在程序执行的时候,所发生会打断程序正常流程的事件。异常的类型错误出现产生异常对象程序的状态信息“异常”被看作是对象,是继承自类Throwable的子类。所有Throwable的子类所产生的对象实例,都是异常。1异常和异常对象异常类的层次ErrorObjectThrowableExc

4、eptionRuntimeExceptionNon_RuntimeException1异常和异常对象运行时异常:运行异常可以不做处理,运行时系统会把生成的运行时异常对象交给默认的异常处理程序,在标准输出上显示异常的内容及发生异常的位置。1异常和异常对象ArithmeticException:除0,用0取模;NullPointException:访问一个空对象中的变量和方法,或一个空数组中的元素;ClassCastException:把对象o强制成ClassC,而o既不是C的实例,又不是C的子类的实例;NegativeArraySizeException:数组的长度是负数

5、;ArrayIndexOutOfBoundsException:访问数组中的非法元素。1异常和异常对象非运行时异常:非运行异常需要使用try-catch-finally语句捕获异常或使用throws子句生声明异常。1异常和异常对象IOExceptionFileNotFoundException:找不到文件;InterruptedIOException;UnknownHostException;UnknownServiceException;SocketException;MalformedURLException;NoSuchMethodExceptionClassNo

6、tFoundException2异常的处理过程抛出异常:产生一个异常对象以及把它转交给运行系统间接抛出(try)直接抛出(throw)捕获异常(catch):找出异常的合适处理方法,即异常指针的选择过程处理异常2异常的处理过程Java的异常处理机制由try/catch/finally组成try{//可能会产生异常的程序块}catch(Exception1){//异常处理}catch(Exception2){//异常处理}[finally{//清除方法状态和关闭文件等语句}]2异常的处理过程例1:try{System.in.read();}catch(IOExceptio

7、ne){Stringerr=e.getMessage();System.out.println(err);}//BubbleSort1.javapublicclassBubbleSort1{publicstaticvoidmain(Stringargs[]){inta[]=newint[10];for(inti=0;i<10;i++)a[i]=(int)(Math.random()*100);for(inti=0;i

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。