- 1、本文档共28页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
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
最近下载
- 审核准则 - 2-IRIS CERTIFICATION TM RULES (22163审核准则) zh.pdf VIP
- 精神科物理治疗.pptx VIP
- 初中生英语读书专题讲座课件-阅读讲座.ppt VIP
- 2024北京五中高一(上)第一次段考数学试题及答案.pdf VIP
- 2024年宁波前湾控股集团有限公司人员招聘考试真题.docx VIP
- 2025年儿童青少年近视防控白皮书.pdf VIP
- 恢复强制执行申请书.pdf VIP
- 2024北京二中高一(上)段考一数学试题及答案.docx VIP
- 2025年湖州市吴兴区小升初数学秋季入学摸底测试卷(含答案).doc VIP
- 2025年湖州市吴兴区小升初语文秋季入学摸底测试卷(含答案).doc VIP
文档评论(0)