熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Java核心技術 >> 正文

一個關於拋出異常的程序代碼的分析

2013-11-23 19:13:26  來源: Java核心技術 

   public class test {
   public static string output =
  
   public static void foo(int i) {
   try {
   if(i= =) {
   throw new Exception ();
   }
   output += ;
   )
   catch(Exception e) {
   output += ;
   return;
   )
   finally (
   output += ;
   )
   output += ;
   )
  
   public static void main (string args[]) (
   foo();
   foo();
  
   )
   )
  What is the value of the variable output at line ?
  Ans:
  答案怎麼會輸出個數字呢?
  首先foo()就直接到第output=
  然後因為沒有拋出異常所以直接運行
  然後運行此時output=
  foo()因為拋出異常所以運行
  然後因為catch了異常然後運行finally裡的語句
  但是行的不再被運行因為行已經要求return了
From:http://tw.wingwit.com/Article/program/Java/hx/201311/26468.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.