第7章 异常处理与断言.ppt

  1. 1、本文档共28页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
回 顾;第七章 异常处理和断言;教学目的和要求:;重点: Java异常处理机制; Java内置异常类; 如何自定义异常 如何使用断言 难点: 理解异常处理块中各个语句块的作用 ;1 Public class HelloWorld{ 2 public static void main(String args[ ]){ 3 int i=0; 4 String g[ ]={Hello World!, Hello!, 5 HELLO WORLD!}; 6 while ( i4){ 7 System.out.println(g[i]); 8 i++; 9 } 10 } 11 }; 7.1 异常的概念; 7.1.1 Java 异常处理机制; Java异常处理由5个关键字实现:try、catch、throw、throws和finally。 其中try用来执行一段程序,如果出现异常,则系统抛出(throw)一个 异常对象,可以根据该对象的类型来捕获(catch)它并处理它。最后 由 finally 语句块来进行收尾工作。 下面是异常处理块的基本形式: try { // 可能产生异常的代码块 throw new ExceptionType1(); //抛出ExceptionType1类型的异常 } catch(ExceptionType2 e) { // 捕获并处理ExceptionType2类型的异常。该代码段不一定会执行 } catch(ExceptionType3 e) { // 捕获并处理ExceptionType3类型的异常。该代码段不一定会执行 } finally { // 收尾工作,释放资源。该代码段一定会执行 }; import java.io.*; public class E7_1{ public static void main(String args[ ]){ int b; try { FileInputStream fis=new FileInputStream(test.txt); while ( (b=fis.read()) !=-1) System.out.print((char)b); fis.close(); } catch (Exception e) { system.out.println(出错了,原因是:); system.out.println (e.toString()); } } }; Java异常处理机制是面向对象的。每发生一起异常就产生一个异常对象。 在Java类库中定义了很多异常类。所有异常类都是类 Java.lang.Throwable 的子类。 ;Throwable 类有两个直接子类: 子类 Error 代表一些很难恢复的严重的系统错误,不是用户程序本身所能控制的。所以 一般不用捕获与处理Error,而是交给Java 运行系统处理。 子类 Exception 代表用户程序可以捕获的异常情况。 子类 RuntimeException 代表程序设计或实现上的问题,如除数为零或者数组越界等。 这类异常经常出现,如果全部做出处理,会影响程序的可读性和效率。 所以这类异常,程序可以不捕获,而是交给Java 运行系统自动处理。 其他子类 (例如 IOException,ClassNotFoundException 等) 程序中必须捕获并处理这些异常,或者声明抛出。 ;7.2 异常处理;7.2.1 捕获异常; import java.io.*; public class E7_3 { public static void main(String args[]) { try { int i= 7/0; System.out.println (该语句会不会执行?); } catch (ArithmeticException e) { System.out.println (出现错误: + e.getMessage());

文档评论(0)

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

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

1亿VIP精品文档

相关文档