- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第四篇 Java语言基础类 第四篇 Java语言基础类 第八章 异常 第九章 字符串 第十章 线程 第八章 异常 8.1 异常的概念 8.2 异常的分类 8.3 创建异常类型 8.4 throw 8.5 throws子句 8.6 try、catch和finally 8.7 何时使用异常 8.8 小结 8.1 异常的概念 【课前思考】 ◇ 什么是异常?Java中对异常的处理机制是什么? 【学习目标】 ◇ 本讲主要讲述了Java语言中的独特的异常处理机制,通过本讲的学习,同学们可以编写更为完善的Java程序。 【学习指南】 ◇ 仔细阅读本章各知识点的内容, 深刻理解Java语言中独特的例外处理机制,掌握处理问题的方法,多练习,多上机。 【难 重 点】 ◇ 重点:在编写程序时,要正确地使用捕获异常和声明抛弃异常的两种异常处理的方法。 ◇ 难点:如何使用Java中的异常处理机制,自定义异常类型与系统已提供的异常类型的区别与联系。 8.1 异常的概念 什么是异常 定义:在程序的运行过程中所发生的异常事件,它中断指令的正常执行。? Java中提供了一种独特的异常处理机制。 没有处理错误的程序 3. 以常规方法处理错误 8.1 异常的概念 不采用异常处理的缺点: 观察前面的程序你会发现大部分精力花在出错处理上 只把能够想到的错误考虑到,对以外的情况无法处理 程序可读性差 出错返回信息量太少 8.1 异常的概念 用异常的形式处理错误 8.2 异常的分类 JDK的每个包中都定义了异常类,都继承自Throwable类,该类的任一扩展类所实例化的对象都称为异常对象。 8.2 异常的分类 8.2 异常的分类 例1 8.3 创建异常类型 如果Java内建的异常类无法满足程序的要求,那么就需要创建自己的异常。 需要将异常类从Exception中继承出来,或从Exception的一个子类继承,如IOException。 例2 :用一个新的属性值替换一个制定属性的当前值,如果该属性名不存在,替换不合理,引发一个异常。 8.4 throw throw : 引发一个异常对象。在Java程序的执行过程中,如果出现了异常事件,就会产生一个异常对象。生成的异常对象将传递给Java运行时系统,这一异常的产生和提交过程称为引发(throw)异常。引发有时也称为抛出。 throw ExceptionObject; 8.5 throws子句 定义:说明一个方法可引发的一组检测性异常。它包含一个用逗号分隔的异常类型表。 功能:使方法或构造器的调用者知道,调用可能返回正常结果,也可能得到异常结果。 只有在方法中未被捕获的异常才必须列出。 8.5 throws子句 只有throws子句说明过的异常类型才可以被引发。 若方法没有throws子句,则说明不能引发异常。 当调用一个在其throws子句中列出了检测异常的方法时,有以下3种选择: 捕获并处理该异常。 捕获并映射到自己的一个异常,即引发一个在自己的throws子句中说明的异常。 在自己的throws子句中说明该异常,并使该异常通过。 8.6 try、catch和finally try-catch-finally语句:实现捕获并处理异常。 捕获异常的第一步是用try{…}选定捕获异常的范围,由try所限定的代码块中的语句在执行过程中可能会生异常对象并throw(抛出)。 捕获异常的第二步:在catch块中是对异常对象进行处理的代码,每个try代码块可以伴随一个或多个catch语句,用于处理try代码块中所产生的异常事件。 捕获异常的最后一步是通过finally语句为异常处理提供一个统一的出口,使得在控制流转到程序的其它部分以前,能够对程序的状态作统一的管理。不论在try代码块中是否发生了异常事件,finally块中的语句都会被执行。 8.6 try、catch和finally 例子3,处理replaceValue引发的异常 8.6 try、catch和finally 捕获异常对象的顺序和catch语句的顺序有关,当捕获到一个异常对象时,剩下的catch语句就不再进行匹配。因此,在安排catch语句的顺序时,首先应该捕获最特殊的异常对象,然后再逐渐一般化。即先安排子类,再安排父类。 若引发的异常与catch中的异常类型或超类类型都不匹配,该异常将被转送到调用这个方法的代码。 8.6.1 finally finally:用来清理 内部状态或释放非对象资源。 finally子句可用来对break、continue和return进行清理。不论执行何种控制转移语句,finall
您可能关注的文档
最近下载
- 防火墙功能测试表.pdf VIP
- 2025河南应用技术职业学院教师招聘考试试题.docx
- 中国经导管主动脉瓣置换术临床路径专家共识解读(最新版)PPT课件.pptx VIP
- 简单判断的演绎推理方法(同步练习) 高中政治统编版选择性必修三逻辑与思维.docx VIP
- 小巨人机床配置气源要求.pdf VIP
- 高考高中古诗词鉴赏之十三种描写手法诗歌鉴赏专项练习.doc VIP
- 小巨人机床配置油品要求.pdf VIP
- 2023年河南应用技术职业学院教师招聘考试笔试试题及答案解析.docx VIP
- 2024年河南应用技术职业学院教师招聘考试笔试模拟试题及答案解析.docx VIP
- 肠梗阻病人的护理课件.ppt VIP
文档评论(0)