《Cracking the Coding Interview》——第14章:Java——题目2

2014-04-26 18:44

题目:在java的try-catch-finally语句块里,如果catch里面有return语句的话,finally还会被执行吗?

解法:会。

代码:

 1 // 14.2 Will the code in finally {} be executed if there is a return statement inside try {} or catch{}?

 2 // The answer is yes.

 3 // OUTPUT:

 4 // Hello world.

 5 // An exception is caught: java.lang.ArrayIndexOutOfBoundsException: 2

 6 // Finally you're here.

 7 public class TestJava {

 8     public static void main(String[] args) {

 9         try {

10             System.out.println("Hello world.");

11             int[] a = new int[2];

12             a[2] = 1;

13             return;

14         } catch (Exception e) {

15             // TODO: handle exception

16             System.out.println("An exception is caught: " + e);

17             return;

18         } finally {

19             System.out.println("Finally you're here.");

20         }

21     }

22 }

 

你可能感兴趣的:(interview)