try catch finally 中的return语句执行先后问题

结论:

1. try catch中的 return 一定是在finally代码块执行后才执行的!!所以不要在finally块中使用return语句,不然try catch中的return语句会失效。

public class Test{
    public static void main(){
       String result =  test();
        System.out.println(result);
    }

    public static String test(){
      try {
            System.out.println("try代码块的语句执行了");
            return "try块中的return语句执行了";
        } catch (RuntimeException e) {
            e.getMessage();
        } finally {
            System.out.println("finally代码块的语句执行了");
            return "finally块的return语句执行了";
        }
   }            
}

原文地址:https://www.cnblogs.com/njqa/p/8301484.html