Java方法中,,在try中return之后,后面的finally还执行吗? 测试代码如下:
(){try{System.out.println(“try”);return 1;}catch(Exception e){return 0;}finally{System.out.println(“finally”);}}
直接看结果:
try finally
原因: finally语句在return之前执行。
如果在finally中再加上一个return呢? 测试代码如下:
public class Main {(String[] args) {System.out.println(print());}(){try{System.out.println(“try”);return 1;}catch(Exception e){return 0;}finally{System.out.println(“finally”);return 2;}}}
结果如下:
try finally 2
深入理解: 《关于 Java 中 finally 语句块的深度辨析》
你挤进地铁时,西藏的山鹰一直盘旋云端,