Java try catch finally的顺序问题

1.结论

正确顺序:try-catch-finally

错误顺序: try-finally-catch 等

2.示例代码

2.1正确顺序,编译正常,执行结果正常。

package huafeng2019.github.io804;

public class Main {
    public static void main(String[] args) {
        try {
            Object obj = null;
            System.out.println(obj.toString());
            System.out.println("A");

        } catch (NullPointerException e) {
            System.out.println("B");

        } finally {
            System.out.println("C");
        }
    }

}

 

Java try catch finally的顺序问题

2.2错误顺序,编译失败

package huafeng2019.github.io804;

public class Main {
    public static void main(String[] args) {
        try {
            Object obj = null;
            System.out.println(obj.toString());
            System.out.println("A");
        } finally {
            System.out.println("C");
        }
        catch (NullPointerException e) {
            System.out.println("B");
        }

    }
}    
 

 

 

Java try catch finally的顺序问题

本文到此结束。