2014年计算机二级JAVA解析:Java的\异常\4

考试站(www.examzz.com)   【考试站:中国教育考试第一门户】   2014年4月14日
2014年计算机二级JAVA解析:Java的\异常\4

  8.9finally

  当一个\"异常\"被抛出时,程序的执行就不再是线性的,跳过某?copy;行,甚至会由于没有与?reg;匹配的catch子句而过早地返回。有时确保一段代码不管发生什么\"异常\"都被执行到是必要的,关键词finally就是用来标识这样一段代码的。即使你没有catch子句,finally程序块也会在执行try程序块后的程序?reg;前执行。每个try语句都需要至少一个与?reg;相配的catch子句或 finally子句。一个成员函数返回到调用它的成员函数,或者通过一个没捕捉到的\"异常\",或者通过一个明确的return语句,finally子句总是恰好在成员函数返回前执行。下面是一个例子,它有几个成员函数,每个成员函数用不同的途径退出,但执行了finally子句。

  classFinallyDemo{staticvoidprocA(){try

  {System.out.println(\"insideprocA\");thrownew

  RuntimeException(\"demo\");}finally{System.out.println(\"procA\'s

  finally\");}}staticvoidprocB(){try{System.out.println(\"inside

  procB\");return;}finally{System.out.println(\"procB\'sfinally\");}}

  publicstaticvoidmain(Stringargs[]){try{procA();}catch(Exception

  e);procB();}}

  下面是这个例子的运行结果:

  C:\\>javaFinallyDemoinsideprocAprocA\'sfinallyinsideprocBprocB\'sfinally

  本章小结

  1.\"异常\"指的是程序运行时出现的非正常情况。

  2.在\"异常\"类层次的最上层的类叫Throwable,它有两个直接的子类:Exception和Error。

  3.Java的\"异常\"处理通过5个关键词来实现:try,catch,throw,throws和finally。


相关文章