java第08章--1(java异常)

java第08章--1(java异常)

ID:4159970

大小:128.05 KB

页数:25页

时间:2017-11-29

java第08章--1(java异常)_第1页
java第08章--1(java异常)_第2页
java第08章--1(java异常)_第3页
java第08章--1(java异常)_第4页
java第08章--1(java异常)_第5页
资源描述:

《java第08章--1(java异常)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、JavaJava技术基础技术基础彭刚penggang@mail.hust.edu.cn第八章例外例外(Exception)(Exception)处理处理内容提要:1、例外的概念2、例外的分类(Throwable/Exception)3、捕获例外(try-catch-finally)4、声明例外(throws)5、创建自己的例外1、例外的概念在C语言中,通过使用if语句来判断是否出现了错误,同时,调用函数通过被调用函数的返回值感知在被调用函数中产生的错误事件并进行处理。但是,这种错误处理机制会导致不少问题,因为在很多情况下需要知道错误产生的内部细节。通常,用全局变

2、量Errno来存储一个异常事件的类型,这容易导致误用,因为一个Errno的值有可能在被处理前被另外的错误覆盖掉。此外,即使最优美的C语言程序,为了处理异常情况,也常常求助于goto语句。1、例外的概念¢没有错误处理的程序:{openTheFile;determineitssize;allocatethatmuchmemory;read-filecloseTheFile;}1、例外的概念¢以常规方法处理错误:openFiles;if(theFilesOpen){determinethelengthofthefile;if(gotTheFileLength){all

3、ocatethatmuchmemory;if(gotEnoughMemory){readthefileintomemory;if(readFailed)errorCode=-1;elseerrorCode=-2;}elseerrorCode=-3;}elseerrorCode=-4;}elseerrorCode=-5;1、例外的概念以常规方法处理错误存在的问题:¢观察前面的程序,大家会发现大部分精力花在出错处理上了¢只把能够想到的错误考虑到,对以外的情况无法处理¢程序可读性差,大量的错误处理代码混杂在程序中¢出错返回信息量太少,无法更确切的了解错误状况或原因1、

4、例外的概念Java通过面向对象的方法来处理程序错误,在Java中,错误被称为例外或异常(Exception)。见P469,例7.1:HelloWorld.java在一个方法的运行过程中,如果发生了例外,则这个方法(或者是Java虚拟机)生成一个代表该例外的对象(包含了该例外的详细信息),并把它交给运行时系统,运行时系统寻找相应的代码来处理这一例外。这个“生成例外对象,并把它提交给运行时系统的过程”称为抛出(throw)一个例外。运行时系统在方法的调用栈中查找,从生成例外的方法开始进行回朔,直到找到包含相应例外处理的方法为止,这一个过程称为捕获(catch)一个例

5、外。1、例外的概念¢用例外的形式处理错误:{try{openTheFile;determineitssize;allocatethatmuchmemory;read-File;closeTheFile;}catch(fileopenFailed){dosomething;}catch(sizeDetermineFailed){dosomething;}catch(memoryAllocateFailed){dosomething;}catch(readFailed){dosomething;}catch(fileCloseFailed){dosomething;

6、}finally{must-do-sth;}}见P470,例7.2:HelloWorldMod.java2、捕获例外Java的例外处理是通过3个关键词来实现的:try-catch-finally。用try来监视执行一段程序,如果出现例外,系统就会抛出(throws)例外,可以通过例外的类型来捕捉(catch)并处理它,或最后(finally)由缺省处理方法来处理。try{2、捕获例外//接受监视的程序块,在此区域//内发生的异常,由catch中指定¢try代码段包含可能产生例外//的程序处理;的代码}¢try代码段后跟有一个或多个//不能有其它语句分隔catch

7、代码段catch(要处理的异常种类和标¢每个catch代码段声明其能处识符){理的一种特定类型的例外//处理异常;}¢每个catch代码段都是一段例外处理代码catch(要处理的异常种类和标识符){¢程序继续执行最后一个catch代码段后的代码//处理异常;}(或执行完finally代码段后)…¢不同的代码段是不同的作用finally{//释放资源域,不可访问相互之间定义//最终处理(缺省处理);}的局部变量…//OtherStatements3、例外的分类Java按照OOP的思想建立了一个异常处理(Exceptionhandling)机制以捕获在程序运行期间所

8、发生的错误并抛出异常信息

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

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

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