- 1、本文档共28页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Java程序的设计基础第6章 Java异常处理.ppt
2. catch语句 每个try语句必须伴随一个或多个catch语句,用于捕获try代码块所产生的异常并做相应的处理,而且多个catch语句之间可以交换顺序。catch语句有一个形式参数,用于指明其所能捕获的异常类型,运行时系统通过参数是否和抛出的异常对象是否匹配来捕捉异常。参数匹配,满足下面三个条件任何一种,异常对象被接收: (1) 异常对象与参数属于相同异常类; (2) 异常对象属于参数异常类的子类; (3) 异常对象实现了参数异常类所定义的接口。 6.2.2 捕捉异常 3. finally语句 finally语句为异常处理提供一个统一的出口。无论try所指定的程序块中抛出或不抛出异常,也无论catch语句的异常类型是否与所抛出的异常类型匹配,finally所指定的代码都要被执行,它提供了统一的出口。 通常在finally语句中可以进行资源的清除工作,如关闭打开的文件和关闭数据流等。 6.2.2 捕捉异常 当我们在设计自己的类包时,应尽最大的努力为用户提供最好的服务,并且希望用户不要滥用我们所提供的方法,当程序出现某些异常事件时,我们希望程序足够健壮,这时就需要用到异常机制。在选择异常类型时,可以使用Java类库中已经定义好的类,也可以自己定义异常类。 当自定义异常是从RuntimeException及其子类继承而来时,程序中可以不捕捉并处理它。当自定义异常是从Exception及其其他子类继承而来时,该自定义异常在程序中必须捕捉并处理它,那么自定义异常不仅要用try-catch-finally捕获,还必须由用户自己定义和抛出,一般流程如图6-3所示。 6.3 使用用户自定义异常 定义异常 抛出异常 捕捉异常 图6-3 定义和使用自定义异常流程 【例6.5】计算两个数之和,当任意一个数超出范围时,抛出自己的异常。 第一步,定义NumberRangeException异常类: class NumberRangeException extends Exception{ public NumberRangeException(String msg) { super(msg); } } 6.3 使用用户自定义异常 第二步,定义一个计算两数和的方法CalcAnswer(),当操作的数不是在10和20之间时,抛出NumberRangeException异常: public int CalcAnswer(String str1, String str2) throws NumberRangeException{ int int1, int2; int answer = -1; try{ int1 = Integer.parseInt(str1); int2 = Integer.parseInt(str2); if( (int1 10) || (int1 20) || (int2 10) || (int2 20) ){//判断范围 NumberRangeException e = new NumberRangeException (Numbers not within the specified range.); throw e; //抛出NumberRangeException异常对象 } answer = int1 + int2; //没有异常发生,计算两数之和 }catch (NumberFormatException e){ System.out.println( e.toString() ); //输出异常信息 } return answer; } 6.3 使用用户自定义异常 【例6.6】在定义银行类时,若取钱数大于余额则作为异常处理。 第一步,定义InsufficientFundsException异常类: class InsufficientFundsException extends Exception{ private Bank excepbank; //银行帐户 private double excepAmount; //余额 Insufficien
您可能关注的文档
- Java 语言程序的设计全套.ppt
- JavaScript程序的设计(第2版)01.HTML文档基础.ppt
- JavaScript程序的设计(第2版)01.JavaScript简述.ppt
- JavaScript程序的设计(第2版)01.数据类型、常量及变量.ppt
- JavaScript程序的设计(第2版)02.HTML文档中的常用标记.ppt
- JavaScript程序的设计(第2版)02.窗体(form)及其元素对象.ppt
- JavaScript程序的设计(第2版)02.表达式与运算符.ppt
- JavaScript程序的设计(第2版)03.使用样式.ppt
- JavaScript程序的设计(第2版)03.应用Ajax读取XML文档.ppt
- JavaScript程序的设计(第2版)03.弹出窗口.ppt
- (人教PEP版2025新教材)英语三下期末分单元复习课件.pptx
- (人教PEP版2025新教材)英语三下Unit4 复习课件.pptx
- 2025年高考地理时事热点专题7 美国关税 课件.pptx
- (统编2024版)语文一年级下册 识字7《操场上》课件 (新教材).pptx
- (人教2024版)英语七年级下册Unit8.5 Section B (Project) 课件(新教材).pptx
- 2026小学英语(人教PEP版)语法专题17 疑问句 课件.pptx
- (人教2024版)英语七年级下册Unit8.4 Section B 1a-2d课件(新教材).pptx
- 2026届高考地理《综合题解题技巧》复习课件.pptx
- (人教PEP版2025新教材)英语三下Unit5 复习课件.pptx
- (统编2024版)语文一年级下册 语文园地五 课件 (新教材).pptx
最近下载
- 《肠内肠外营养护理》课件.ppt VIP
- 国家噪音标准规范.doc VIP
- 第2课 土特产包装设计 课件 2023—2024学年浙美版初中美术八年级上册.pptx VIP
- 中考语文诗词鉴赏《桃花源记》《感士不遇赋(并序)》《归园田居》《饮酒》含答案.docx
- 5万吨农副产品加工冷链物流建设项目可研性分析报告.doc VIP
- (6S管理)污水自来水处理厂自来水厂目可视化管理设计方案.pptx VIP
- 化工设计习题及答案.doc
- 综合应用能力事业单位考试(中小学教师类D类)试卷与参考答案(2024年).docx VIP
- 四年级下册劳动《包装礼品盒》PPT课件.pptx VIP
- 正己烷-安全技术说明书MSDS.docx VIP
文档评论(0)