- 1、本文档共11页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第6章 异常处理 Java程序设计及应用开发教程 第6章 异常处理 6.1 异常处理机制 6.2 异常处理方法 6.3 本章小结 本章主要讲述Java语言中的异常及异常处理方法。首先讲述了Java语言的异常处理机制,对Java的异常类层次进行了描述,对常见的异常类型作了解释;对捕获异常以及异常处理方法的常用语句进行了解释和分析;也对自定义异常的方法进行了讲解。 6.1 异常处理机制 异常(Exception)就是程序在运行过程中所发生的异常事件,即不可预测的非正常情况。 Java语言提供的异常处理机制主要是用来处理程序执行过程中产生的各种错误(如数组下标越界、除数为0等)。 使用异常对程序给出一个统一和相对简单的抛出和处理错误的机制。如果一个方法本身能抛出异常,当所调用的方法出现异常时,调用者可以捕获异常使之得到处理;也可以回避异常。 6.1.1 异常层次结构 异常类的根节点为 Throwable,它分为两 大类Error(错误)和 Exception(异常)。 常见系统定义的执行异 常如表6-1所示。 例如:int x=0,y;y=20/x; ArithmeticException 算术错误异常 …… 6.1 异常处理机制0 6.1 异常处理机制 6.1.2 异常处理机制 异常采用了一种面向对象的处理机制,把异常看作一种类,每当发生此类事件时,Java即自动创建一个异常对象,并执行相应的代码去处理该事件。 6.1.3 异常的分类 异常通常分为三种类型: 第一类是Java虚拟机由于某些内部错误产生的异常,这类异常不在用户程序的控制之内,用户不需要处理这类异常; 第二类是标准异常,这类异常通常是由程序代码中的错误产生的,例如被0除、数组下标越界等。这是需要用户程序处理的异常。 第三类是用户根据需要在程序中自定义的异常。 6.1.4 内置异常类 系统中原有的异常类称为内置异常类,与自定义异常类不同,内置异常类是系统已经定义好的,程序员只能对产生了这些异常之后如何进行处理来编程,不能指定怎样的异常属于内 【例6-1】应用程序采用默认异常处理的执行情况。类。 6.2 异常处理方法 Java提供了两种异常方法: 其一是使用try…catch…finally结构语句对异常进行捕捉和处理; 其二是通过throw和throws抛出异常。 6.2.1 异常的捕获与处理 异常处理的语法结构形式如下: try { 可能出现异常的程序执行体 } catch(异常类型1 异常对象1) { 异常类型1对应异常处理程序体1 } catch(异常类型2 异常对象2) { 异常类型1对应异常处理程序体2 } ……. Finally { 异常处理结束前的执行程序体} 【说明】 try语句用于指明可能产生异常的程序代码段,其中所写的为被监视的代码段,一旦发生异常,则由catch代码进行处理。 catch为等待处理的异常事件及其处理代码,在try语句之后。一个try语句可以有若干个catch语句与之相匹配,用于捕捉异常。每一个要捕捉的异常类型对应一个catch语句,该语句包含着异常处理的代码。 finallly为最终处理的代码段,是个可选项,如果包含有finally块,无论异常是否发生,finally块的代码必定执行。 6.2.1 异常的捕获与处理 【例6-2】异常的捕获与处理。 public class TryCatchTest{ public static void main(String args[]){ int a=20,b=0,c; try{ System.out.println(“Before Exception”); c=a/b;System.out.println(“After Exception”); } catch(ArrayIndexOutOfBoundsException e){ System.out.println(“ArrayIndexOutOfBoundsException Access”); } catc
文档评论(0)