面向对象的程序设计-Java张白一第三版第12章.ppt

面向对象的程序设计-Java张白一第三版第12章.ppt

ID:52401966

大小:781.56 KB

页数:31页

时间:2020-04-05

面向对象的程序设计-Java张白一第三版第12章.ppt_第1页
面向对象的程序设计-Java张白一第三版第12章.ppt_第2页
面向对象的程序设计-Java张白一第三版第12章.ppt_第3页
面向对象的程序设计-Java张白一第三版第12章.ppt_第4页
面向对象的程序设计-Java张白一第三版第12章.ppt_第5页
资源描述:

《面向对象的程序设计-Java张白一第三版第12章.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第12章异常处理12.1Java的异常处理机制12.2Java的异常处理语句12.1Java的异常处理机制Java的异常处理机制用于及时有效地处理程序运行中的异常错误。按照这种机制,人们在程序中监视可能发生异常的程序块,一个程序中的所有异常被收集起来放到程序的某一段中处理。这就使人们不必在被监视的程序块中多处插入处理异常的代码,使完成正常功能的程序代码与进行异常处理的程序代码分开。12.1.1异常处理机制的结构Java中引入了异常和异常类,并且定义了很多异常类。每个异常类代表一类运行错误,类中包含了该运行错误的信息和处理错误的方法等内容。每当Java程序运行

2、过程中发生一个可识别的运行错误时,系统都会产生一个相应异常类的对象,并由系统中相应的机制来处理,以确保不会产生死机、死循环或其他对操作系统有损害的结果,从而保证了整个程序运行的安全性。在Java程序中,当程序运行过程中发生异常时,可采用如图12.1所示的两种方式处理异常:一是由Java异常处理机制的预设处理方法来处理,即一旦程序发生异常,程序就会被终止并显示一些错误信息给用户;二是使用Java语言提供的try-catch-finally语句自行处理异常。第二种方式的优点很多,其中最主要的优点是将处理异常的代码与程序代码的主线分离开来,增强了程序的可读性;其次

3、是可减少中途终止程序运行的可能性。图12.1异常处理机制结构【示例程序C12_1.java】系统自动抛出异常。publicclassC12_1{publicstaticvoidmain(String[ ]args){inta,b,c;a=67;b=0;c=a/b;System.out.println(a+“/”+b+“=”+c);}}该程序在NetBeans环境下的运行结果如下:Exceptioninthread“main”java.lang.ArithmeticException:/byzeroatC12_1.main(C12_1.java:6)Java

4、Result:112.1.2异常类的继承关系Java中定义了很多异常类,每个异常类都代表了一类运行错误,类中包含了该运行错误的信息和处理错误的方法等内容。这些异常类的继承结构如图12.2所示。   在Java语言中所有的异常类都继承自java.lang.Throwable类。Throwable类有两个直接子类:一个是Error子类,它包含Java系统或执行环境中发生的异常,这些异常是用户无法捕捉到的;另一个是Exception类,它包含了一般性的异常,如I/O异常、SQL异常,这些异常是用户可以捕捉到的,可以通过产生它的子类来创建自己的异常处理。下面分别论述

5、。图12.2异常类的继承结构(2)java.io包中的异常。(4)java.net包中的异常。(5)系统定义的运行异常Exception类。(6)系统定义的运行异常Error类。   在系统定义的运行异常Error类中,除AWTError类在java.awt包中外,其余的全部在java.lang包中。java.lang包中的Error类如下:12.2Java的异常处理语句Java语言的异常处理是通过try、catch、finally、throw和throws语句来实现的。12.2.1try-catch-finally语句在大多数情况下,系统预设的异常处理方法

6、只会输出一些简单的信息到显示器上,然后结束程序的执行。这样的处理方式在许多情况下并不符合我们的要求。为此,Java语言为我们提供了try-catch-finally语句,使用该语句可以明确地捕捉到某种类型的异常,并按我们的要求加以适当处理,这才是发挥异常处理机制的最佳方式。try-catch-finally的结构如图12.3所示。图12.3try-catch-finally的结构try-catch-finally组合语句用来实现抛出异常和捕获异常的功能。其格式如下:try{statements//可能发生异常的程序代码}catch(ExceptionType

7、1ExceptionObject){ExceptionHandling//处理异常的程序代码1}catch(ExceptionType2ExceptionObject){ExceptionHandling//处理异常的程序代码2}finally{FinallyHandling//无论是否发生异常都要执行的程序代码}其中:(1) try:将可能出现错误的程序代码放在try块中,对try块中的程序代码进行检查,可能会抛出一个或多个异常。因此,try后面可跟一个或多个catch。…(2) catch:其功能是捕获异常。参数ExceptionObject是Excep

8、tionType类的对象,这是由前面的try语句生成

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

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

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