《JAVA语言中的异常》PPT课件

《JAVA语言中的异常》PPT课件

ID:36642655

大小:268.60 KB

页数:33页

时间:2019-05-09

《JAVA语言中的异常》PPT课件_第1页
《JAVA语言中的异常》PPT课件_第2页
《JAVA语言中的异常》PPT课件_第3页
《JAVA语言中的异常》PPT课件_第4页
《JAVA语言中的异常》PPT课件_第5页
资源描述:

《《JAVA语言中的异常》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第7章JAVA语言中的异常异常编写程序时多多少少总会有些错误,程序中的语法错误会在编译时被发现并修正,而有些错误是发生在运行阶段的。这些错误依照其严重程度分为两类,一类是致命性的严重错误,它们的出现可能会导致系统崩溃,并且程序员并不能编写程序解决所出现的问题。另一类是普通级别的错误,这类错误如果不加控制就使程序非正常中断,但如果编写代码来处理的话,就有可能避免中断程序的执行。这类错误一般地称为异常(Exception),用来处理异常的过程称为异常处理。异常在Java中主要有三类异常。事实上,Java定义了类java.lang.Th

2、rowable,它是使用异常处理机制可被抛出并捕获的所有异常对象的父类。它有三个基本子类,如下图:异常每个类的使用目的不同。Error表示很难恢复的错误。一般不期望用户程序来处理,即使程序员有能力处理这种错误,也还是交给系统处理为好。RuntimeException用来表示设计或实现方面的问题。因为设计和实现正确的程序不会引发这类异常,所以常常不处理它。发生这类异常时,运行时环境会输出一条信息,提示用户修正错误。其他异常表示运行时因环境的影响可能发生并可被处理的问题。因为用户的错误很可能导致这类问题发生,我们要学习的是如何处理这类

3、异常。异常示例例7-1文件操作功能描述{openTheFile;//打开文件determineitssize;//获取文件的长度allocatethatmuchmemory;//分配内存read-file;//读文件closeTheFile;//关闭文件}实现文件读取的程序大多有上述这样的程序框架。因为文件存放在外存,程序要访问文件时必须先要将文件放入内存然后才能访问。这段程序是顺序执行结构,而前一句执行的结果又直接影响后一句是否能执行。如果中间哪一条语句执行不正确,后续语句都不能正确执行,程序也会中断。所以凡是有输入输出操作的语

4、句都可能会出现问题。异常示例例7-2增加了约束的文件操作功能描述openFiles;//打开文件if(theFilesOpen){//判定打开是否正确determinethelengthofthefile;//获取文件的长度if(gotTheFileLength){//判定已得到文件长度allocatethatmuchmemory;//分配内存if(gotEnoughMemory){//内存分配成功readthefileintomemory;//读文件if(readFailed)errorCode=-1;//读取失败elseerr

5、orCode=-2;//读取成功closeTheFile;//关闭文件}elseerrorCode=-3;//内存分配不成功}elseerrorCode=-4;//没有得到文件长度}elseerrorCode=-5;//文件打开不正确异常程序发生异常时称为产生了一个异常事件,系统根据异常生成一个异常对象。根据这个异常的种类,该对象可能由正在运行的方法生成,也可能由JVM生成。异常对象中包含了该异常必要的详细说明信息,包括所发生的异常事件的类型及异常发生时程序的运行状态。生成的异常对象传递给Java运行时系统,运行时系统寻找相应的代

6、码来处理这一异常。我们把生成异常对象并把它提交给运行时系统的这一过程称为抛出(throw)一个异常。异常异常发生后,Java运行时系统从生成对象的代码块开始进行回溯,沿方法的调用栈逐层回溯寻找处理代码,并把异常对象交给该方法处理,这一过程称为捕获(catch)。如图所示:异常处理方式示例下面用异常处理方式重写例7-2。try{openTheFile;//打开文件determineitssize;//获取文件的长度allocatethatmuchmemory;//分配内存read-File;//读文件closeTheFile;//关

7、闭文件}catch(fileopenFailed){//文件打开失败的处理代码;}catch(sizeDetermineFailed){//不能获得文件大小的处理代码;}catch(memoryAllocateFailed){//内存分配失败的处理代码;}catch(readFailed){//读文件失败的处理代码;}catch(fileCloseFailed){//关闭文件失败的处理代码;}finally{//需要统一处理的代码;}异常类和错误类Java语言在所有的预设包中都定义了异常类Exception和错误类Error。Ex

8、ception类是所有异常的父类,Error类是所有错误的父类,这两个类同时又是Throwable的子类。它们的层次结构如图所示:异常处理相关语句虽然引发某个具体异常的语句可能是一条,但相关的语句可能会有多条,程序中使用try语句将这些语句全部括住

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

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

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