Does a finally block always get executed in Java?

前端 未结 30 1630
逝去的感伤
逝去的感伤 2020-11-21 07:24

Considering this code, can I be absolutely sure that the finally block always executes, no matter what something() is?

try         


        
30条回答
  •  忘掉有多难
    2020-11-21 07:27

    Example code:

    public static void main(String[] args) {
        System.out.println(Test.test());
    }
    
    public static int test() {
        try {
            return 0;
        }
        finally {
            System.out.println("finally trumps return.");
        }
    }
    

    Output:

    finally trumps return. 
    0
    

提交回复
热议问题