Java程序设计课件第6章异常处理递归与单体程序设计方法.ppt

Java程序设计课件第6章异常处理递归与单体程序设计方法.ppt

  1. 1、本文档共30页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Java语言程序设计 第六章 异常处理和递归 讲授人:傅晓阳 教授 上章回顾 String与StringBuffer的区别是什么? 举例说明String中处理字符串的成员方法有哪些? 本章课程纲要 本课程纲要 异常处理的类型 异常处理的类型 Error类及其子类主要用来描述一些很难恢复的错误,如内存越界。这类错误一般不期望用户程序来处理,即使程序员有能力处理这种错误,也还是交给系统处理为好。 RuntimeException用来描述程序员在设计或编写过程中不正确所引发的异常,如数组越界、错误的强制类型转换等。 异常处理的类型 在Java中Error和RuntimeException及其子类又称为非检查异常(unchecked),对于这类异常,编译器不做检查 在编译时检查是否会出现异常情况的称为受检异常(checked)。 对于任何方法来说,如果它调用的方法抛出了某一检查类型的异常,该调用者就必需捕获这一异常或者也声明抛出该类异常(或该异常的父类),编译器对此要进行检查。 异常处理的类型-非检查异常 异常处理的类型-非检查异常 异常处理的类型-非检查异常 异常处理的类型-检查异常 异常处理的类型-检查异常 本课程纲要 异常处理结构 抛出异常 捕获异常 异常处理结构 try…catch(单catch) try…catch(多catch) try…catch…finally 异常处理结构 try…catch语句块 try…catch语句块分为try语句块和catch语句块,其结构如下: try { //try语句块,可能产生异常的程序代码 } catch(异常类型 e) { // catch语句块,对异常进行处理 } 参见实例5-2 TestTry.java 异常处理结构 多catch语句块 try { //try语句块,可能产生异常的程序代码 } catch(异常类型1 e1) { // catch语句块,对异常进行处理 } catch(异常类型2 e2) { // catch语句块,对异常进行处理 } … … catch(异常类型n en) //捕获并处理异常 { // catch语句块,对异常进行处理 }参见实例5-3 TestTryMul 异常处理结构 try…catch…finally语句块 try { //try语句块,可能产生异常的程序代码 } catch(异常类型1 e1) { // catch语句块,对异常进行处理 } … … catch(异常类型n en) { // catch语句块,对异常进行处理 } finally { //无论异常是否发生,try/catch后一定要执行的语句 }参见实例5-4 TestFinally.java 本章课程纲要 本课程纲要 抛出异常 throws语句间接抛出异常 在方法的定义中利用throws关键字声明异常类型而间接抛出异常。 throws语句形式如下: 方法说明throws 异常类列表 { 声明语句 执行语句 } 参见实例5-5 TestThrows 抛出异常 throw语句抛出异常 throw语句形式如下: throw 异常类对象 所有生成的异常对象必须是Throwable或其子类的实例 含有throw语句的方法,需要在方法头定义中增加以下内容: 访问控制说明符 类型 方法名称(参数列表)throws 异常类名列表 { 方法体 } 参见实例5-6TestThrowException 本课程纲要 自定义异常处理类 自定义异常类必须是Exception类的子类。一般的声明形式如下: public Class MyExceptionName extends Exception { public MyExceptionName ( ) { super(“Some string explaining the exception”); } } 自定义异常处理类 实例5-7声明当数组下标越界时抛出的异常类IndexException public class IndexException extends Exception { public IndexException(){ super(数组下标越界!); } 自定义异常处理类 在方法中抛出自定义异常处理类的异常 public static void printarray(int[] b,int m) throws IndexException{ if(m0||m=b.length) throw new IndexException(); System.out.print( +b[m]); } 自定义异常处理类 在异常捕获

文档评论(0)

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

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

1亿VIP精品文档

相关文档