网站大量收购独家精品文档,联系QQ:2885784924

类的异常指的是一般的异常-Read.PPT

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
类的异常指的是一般的异常-Read

第8章 异常处理 8.1 异常和异常处理的两种方法 8.2 Java的异常类 8.3 Java的异常处理方法 8.4 异常的抛出和处理 8.5 自定义的异常类 8.1 异常和异常处理的两种方法 异常是指程序在执行过程中出现的意外事件。异常通常会使程序的正常流程被打断 一般情况下,程序中需要处理异常情况,通过对异常情况的处理,可以使程序的执行流程继续下去,并进行一些异常处理;否则,程序的正常执行流程会被中断 8.1.1 异常的基本类型 8.1.2 if-else形式的异常处理方法 8.1.3 Java的异常处理方法 8.1.1 异常的基本类型 异常处理的第一步是确定异常的类型,常见的异常情况一般分为以下几类: l用户输入错误。指用户键盘输入错误,输入格式不对或输入内容不符合程序要求等。例如,用户界面要求输入一个整数,而用户输入了一个字符串,或者要求用户输入一个URL地址,但用户输入的地址语法错误等。 l设备故障。计算机硬件设备有时也会出故障,例如打印机没连接好,要求的网页没有找到等。 l物理限制。物理设备本身的限制,例如硬盘已存满,内存已用完等。 l代码错误。程序员编写的代码出现错误,例如从一个空的堆栈中弹出元素,数组下标为负数等 8.1.2 if-else形式的异常处理方法 用if-else语句(或switch-case语句)可以发现异常并做出相应处理。例如,在程序中要将一个文件整个读入内存,通常的步骤是: (1)打开文件。 (2)判断文件的大小。 (3)分配内存。 (4)将文件读入内存。 (5)关闭文件。 在上述的过程中可能出现很多问题,例如: (1)文件打不开。 (2)不能决定文件的大小 (3)内存不能分配 (4)读入失败 (5)文件不能关闭 if-else形式异常处理方法的问题 上述问题可以用if-else语句方式可以发现异常并做出相应的处理。但是, (1)程序员由于过多地分析程序中异常情况的发生情况,在程序中过多地使用if-else语句,会使程序员正常的程序设计思路受到影响 (2)程序中过多地使用if-else语句,也会影响程序的算法思想的可读性 (3)更为重要的是,有些异常情况是不可预见的。例如计算机的连接中断,打印机纸张用完等。所以,if-else形式不是处理异常的好的方法 8.1.3 Java的异常处理方法 Class ReadFile { try { 打开文件 关闭文件 } catch (文件打开失败异常) { 处理文件打开失败异常 } catch (关闭文件失败异常) { 处理关闭文件失败异常 } } try模块和catch模块 在Java语言中,用try模块和catch模块把程序的正常流程代码和异常处理代码分离 把程序中可能出现的异常情况都放进了try模块中,而对于各种异常情况,设计了相应的catch模块,这些模块可以用来捕捉这些异常情况,并进行相应的处理。 在Java程序中,如果设计人员对可能出现的异常没有设计相应的try模块和catch模块,或设计人员无法预见的异常情况,系统会将出现的异常交由Java虚拟机(JVM)处理,此时Java虚拟机会自动捕捉这些异常情况,并将异常情况在屏幕上显示出来 8.2 Java的异常类 Java语言对大多数常见的异常都定义了异常类。这些异常类可以分为两大类: Error 类和Exception 类 Error (错误)类和Exception (异常)类的区别在于: 错误指的是系统异常或运行环境出现的异常, 这些异常一般是很严重的异常, 即使捕捉到通常也无法处理,例如Java虚拟机异常。 Exception类的异常指的是一般的异常,例如,输入/输出(I/O)异常、数据库访问(SQL)异常等。对这些异常应用程序可以进行处理 Java异常类的继承关系 1. Error类及其子类 Java虚拟机会抛出Error错误。程序一般不用捕捉Error错误,由系统进行这类错误的捕捉和处理。Error类及其子类定义了系统中大多数这类错误 (1)LinkageError类及其子类 LinkageError类是Error类的子类。LinkageError(结合错误)类及其子类定义的是一个类依存于另一个类,但在编译前者时后者出现了与前者不兼容情况的各种错误 LinkageError类的子类有: l??????? ClassFormatError 类格式错误 l??????? ClassCircularityError 类循环错误 l??????? NoClassDefFoundError 类定义无法找到错误 l??????? VerifyError 校验错误 l??????? AbstractMethodError

文档评论(0)

zhaoxiaoj + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档