- 6
- 0
- 约 18页
- 2016-10-04 发布于天津
- 举报
第八章异常处理机制异常指的是程序运行时出现的非正.ppt
* 第八章 异常处理机制 异常指的是程序运行时出现的非正常情况。 Java对异常的处理是面向对象的。一个Java的Exception是一个描述异常情况的对象。当出现异常情况时,一个Exception对象就产生了,并放到产生这个异常 的成员函数里。 8.1 引例 public class exceptionDemo { public static void main(String[ ] args) { int i=0; String greetings[]={ hello world!, How are you!, Thank a lots! }; while (i4) { System.out.println(i+ = greetings[i]); i++; } } } 程序结果: e:\student\ java HelloWorld ???? 0=hello world! ??? 1=How are you! ?? 2=Thank a lots! ?java.lang.ArrayIndexOutOfBoundsException:atHelloWorld.main(HelloWorld.java:12) 8.2 异常的类型 Throwable(表示所有的“异常”情况 ) Exception(是用户程序能够捕捉到的“异常”情况 ) Error(它定义了通常无法捕捉到的“异常”) … …… RuntimeException,它是程序运行时自动地对某些错误作出反应而产生的。 … …… …… 8.3 未捕获的异常 任何没有被程序捕获的异常将最终被缺省处理程序处理. 例子1: class exceptionDemo1{ public static void main(String args[]){ int d=0; int a=42/d; } } 当Java执行这个除法时,由于分母是0,就会构造一个异常对象来使程序停下来并处理这个错误情况,在运行时抛出 (throw)这个异常 。缺省的处理器打印Exception的字符字样和发生“异常”的地点。 java.lang.ArithmeticException:/ by zero at exceptionDemo1.main(exceptionDemo1.java:4) 8.4 异常处理 Java的异常处理是通过5个关键词来实现的:try, catch, throw, throws和finally。用try来执行一段程序,如果出现异常 ,系统抛出(throws)一个异常 ,你可以通过它的类型来捕捉(catch)它并处理,最后由finally来结束(finally可选)。 try { 程序块 } catch(ExceptionType1 e) {对ExceptionType1的处理 [ throw e; //再抛出这个“异常”]} catch(ExceptionType2 e) {对ExceptionType2的处理 } … … finally { 程序块 } 8.5 try与catch 通常我们希望自己来处理“异常”并继续运行。可以用try来指定一块预防或监控所有异常的的程序。紧跟在try程序后面,应包含一个catch子句来指定你想要捕捉的异常的类型。例如,下面的例子是在前面的例子的基础上构造的,但它包含一个try程序块和一个catch子句。 对引例exceptionDemo.java的异常处理: public class exceptionDemo { public static void main(String[ ] args) { int i=0; String greetings[]={ hello world!, How are you!, Thank a lots! }; while (i4) { try { System.out.println(i
原创力文档

文档评论(0)