第四节 异常处理.ppt
文本预览下载声明
throws语法: 代码示例: 4.3 throws和throw语句 throw语法: throw [new] 抛出异常类型; 代码示例: throw new WrongPasswordException(access denied! ); 或 WrongPasswordException ex = new WrongPasswordException(access denied! ); throw ex; 4.3 throws和throw语句 4.3.2 throws和throw的区别 4.3 throws和throw语句 4.3.2 throws和throw的区别 两者是有区别的,具体表现在以下几个方面: 1)首先throws出现在方法函数头,表示若抛出异常,由该方法的调用者来处理;而throw出现在函数体,表示抛出异常,由方法体内的语句处理。 2)throws主要是声明这个方法可能会抛出这种类型的异常,使它的调用者知道要捕获这个异常。throw是具体向外抛异常的动作,所以它是抛出一个异常实例。 4.3 throws和throw语句 4.4.1 系统异常处理 例【4-5】 4.4综合举例 4.4.1 系统异常处理 例【4-5】 4.4综合举例 例【4-6】 4.4综合举例 输入190,测试年龄大于120岁时程序的异常处理过程。 4.4综合举例 例【4-7】 4.4综合举例 例【4-7】 4.4综合举例 4.4.2 自定义异常处理 例【4-8】 第一步,定义userException异常类: 4.4综合举例 4.4.2 自定义异常处理 例【4-8】 第二步,定义一个计算两个数字相除的方法Test()。当除数 为零时抛出userException异常: 4.4综合举例 4.4.2 自定义异常处理 例【4-8】 4.4综合举例 4.4.2 自定义异常处理 例【4-8】 4.4综合举例 4.4.2 自定义异常处理 例【4-9】 第一步,定义EmptyStringException和IncludeNumberException 异常类: 4.4综合举例 4.4.2 自定义异常处理 例【4-9】 第二步,定义一个字符串输入类ExceptionExample。当输入 是空串时抛出EmptyStringException异常;当输入串中含有数 字时抛出IncludeNumberException异常: 4.4综合举例 例【4-9】 4.4综合举例 例【4-9】 4.4综合举例 本章小结 4.1 异常处理概述——重点 4.2 常见的异常——重点 4.3 throw和throws语句——难点 4.4 综合举例——了解 * 《Java程序设计实用教程》 《Java程序设计实用教程》 《Java程序设计实用教程》 第4章 异常处理 本章主要内容: 4.1 异常处理概述——重点 4.2 常见的异常——重点 4.3 throw和throws语句——难点 4.4 综合举例——了解 4.1异常处理概述 4.1.1 异常处理机制 通常的异常处理方法: …… 一个操作或方法的返回值; If (返回值的判断A){ } else if(返回值的判断B){ } else if(返回值的判断C){ } else if(返回值的判断C){ } …… 以上方法存在的问题是: 显然虽然这样可以保证系统的强壮性,但是如果每个操作,每个方法都这样去判断,无疑将大大增加代码的复杂性,降低代码的可读性及可维护性。而且这些代码本身的复杂性就很容易引起错误。 4.1异常处理概述 4.1.1异常处理机制 Java提供的异常处理机制是采取抛出异常,然后捕 获异常的处理形式: …… 尝试做以下操作 //如果花括号里的语句发生异常,将抛出异常信息。 { 一个操作或方法并返回一个结果 } //写出可能发生的异常类型,捕获异常 捕获异常为A类型时{……} 捕获异常为B类型时{……} 捕获异常为C类型时{……} 捕获异常为D类型时{……} …… 异常处理机制分为以下两个步骤: 抛出异常:在程序运行中当语义规则被违反时,将会抛出(throw)异常,即产生一个异常事件,生成一个异常对象,并把它交给运行系统,再由运行系统寻找相应的代码来处理异常。异常对象中包含了异常事件类型、程序运行状态等必要信息。 捕获异常:异常抛出后,系统从生成异常对象的代码开始,沿方法的调用
显示全部