Java面向对象程序设计 教学课件 ppt 作者 何曙辉 第五章 异常处理

上传人:E**** 文档编号:89156127 上传时间:2019-05-19 格式:PPT 页数:10 大小:213.51KB
返回 下载 相关 举报
Java面向对象程序设计  教学课件 ppt 作者 何曙辉 第五章 异常处理_第1页
第1页 / 共10页
Java面向对象程序设计  教学课件 ppt 作者 何曙辉 第五章 异常处理_第2页
第2页 / 共10页
Java面向对象程序设计  教学课件 ppt 作者 何曙辉 第五章 异常处理_第3页
第3页 / 共10页
Java面向对象程序设计  教学课件 ppt 作者 何曙辉 第五章 异常处理_第4页
第4页 / 共10页
Java面向对象程序设计  教学课件 ppt 作者 何曙辉 第五章 异常处理_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《Java面向对象程序设计 教学课件 ppt 作者 何曙辉 第五章 异常处理》由会员分享,可在线阅读,更多相关《Java面向对象程序设计 教学课件 ppt 作者 何曙辉 第五章 异常处理(10页珍藏版)》请在金锄头文库上搜索。

1、第五章 异常处理,5.1 异常,异常(Exception)又称为例外、差错、违例等,是特殊的运行错误对象,对应着Java 语言特定的运行错误处理机制。 5.1.1 异常和JAVA异常 5.1.2 常用JAVA异常类列表,5.1 异常,Java的检查型异常,5.2 异常的处理方法,Java中的异常处理机制可以概括为以下几个过程: 在Java程序的执行过程中,如果出现了一个可识别的错误,则会生成一个与该错误相对应的异常类的对象,该异常对象将被提交给Java运行时系统,这个过程称为抛出异常。 当Java运行时系统接收到异常对象后,会寻找能处理这一异常的代码并把当前异常对象交给其处理,这一过程称为捕捉

2、(catch)异常。 如果Java运行时系统找不到处理异常的程序,那么它将终止程序的执行,最后调用缺省异常处理程序来处理异常。,5.2 异常的处理方法,5.2.1 try-catch语句 在try子句中,用一对大括号指定了一段需要被保护的代码,这段代码被称为try块,try块在执行过程中可能会抛出一个或多个类型的异常,该块也指定了它后面的catch子句能够处理的异常范围。 catch子句的参数类似于方法形参的声明,包括一个异常类型和一个异常对象。异常类型必须是Throwable或其子类,一般来说,它应该是Exception或其子类,它指明catch子句能够处理的异常类型。在catch子句中,用

3、一对大括号指定了一段代码,这段代码被称为catch块,catch块指出如何处理异常,通常会调用对象的方法。 catch子句允许有多个,分别处理不同类型的异常。Java运行时系统从上到下依次对每个catch子句处理的异常类型进行检测,直到找到类型相匹配的catch子句为止。这里,类型匹配是指catch所处理的异常类型与生成的异常对象的类型完全一致或是它的父类。因此,每个catch子句应该根据异常类型从特殊到一般排列。,5.2 异常的处理方法,5.2.2 try-catch-finally语句 在捕获异常时,还可以使用finally子句。在try-catch之后紧接上finally子句,表示无论有

4、无异常发生,最后都必须执行finally块中的语句。 当try块在执行过程中抛出一个异常时,其后续代码将不会被执行。通过finally子句可以指定一个代码块,无论try块抛出或不抛出异常,也无论catch子句的异常类型是否与所抛出的异常类型一致,finally块都被执行,它提供了统一的出口。 finally子句是可选的,需要注意的是try子句后至少应该有一个catch子句或finally子句。在finally子句中,通常可以进行资源的清除工作,如关闭打开的文件等。,5.2 异常的处理方法,5.2.3抛出异常 抛出异常是指,当java程序在执行过程中检测到一个可识别的错误,就会产生一个与该错误相

5、对应的异常类的对象,该对象包含了异常的类型和错误出现时程序所处的状态信息,并将它提交给Java运行时系统的过程。在java中抛出异常有2种方法,一种是系统自动抛出异常,还有一种是用throw语句指定在程序中抛出异常。,5.2 异常的处理方法,5.2.4 系统自动抛出的异常 所有的系统异常都可以由系统自动抛出,但用户自定义的异常不能由系统自动抛出。,5.2 异常的处理方法,5.2.5 throw语句抛出的异常 在Java中可以使用throw语句指定在程序中抛出某种类型的异常。throw语句的一般格式如下: throw ; 如果程序企图抛出一个不是throwable或其子类的对象,程序将无法通过编

6、译。当然在一般情况下,程序中抛出的应该是Exception或其子类的对象。 使用throw语句抛出异常时应注意以下几个问题: 一般这种抛出异常的语句应该被定义为在满足一定条件时执行,例如把throw语句放在if语句的if分支中,只有当if条件得到满足,即用户定义的逻辑错误发生时才执行。 catch后的参数类型(T1)必须和throw后的表达式类型(T2)一致。即或者T1和T2一样,或者T1是T2的父类。 含有throw语句的方法,应该在方法头定义中增加如下部分: throws ,5.3 定义异常类,系统定义的异常用来处理系统可以识别的较常见的运行错误,对于某个应用所特有的运行错误,则需要编程人员根据程序的特殊逻辑在用户程序中自己创建用户自定义的异常类和异常对象。这种用户自定义异常主要用来处理用户程序中特定的逻辑运行错误。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号