finally 及 return 執行順序及效果

public class FinallyTest {  public static void main(String[] args) {   int a = 0;   try {    a = 3;    int k = testfinall(a);    System.out.println("return value k="+k);   } catch (Exception e) {    System.out.println(a);   } finally {    System.out.println(a);   }  }  //值傳遞  public static int testfinall(int a) {   try {    a = 8;    return returnBeforFinnaly(a);//先將當前計算的結果保留。以便返回是用   } finally {    System.out.println("finally....."+a);    //return a;  若是這裏還有一個 return  實際返回值以這個return 爲主   }  }  //值傳遞  public static int returnBeforFinnaly(int a){   System.out.println("returnBeforFinnaly...a="+a);   return a++;  } }
相關文章
相關標籤/搜索