1.必然执行的异常统一处理出口(无论是否发生异常,finally必然执行)
2.return的时机
只有程序被关闭了,finally才不会被执行(这里的程序被关闭指的是软件在电脑中没了,电脑关机了)其他情况finally一定会被执行
public class Demo7 { public static void main(String[] args) { haha(); } private static void haha(){ try { System.out.println(1); System.out.println(2); System.out.println(3); System.out.println(4); return; }catch (Exception e){ }finally { System.out.println("汗滴禾下土"); } } }
Demo7的执行结果为1 2 3 4 汗滴禾下土
在这里return执行,需要准备返回值(这里因为是void没有返回值,所以这里return是准备了没有返回值的返回值)在准备返回值到方法结束中间,finally在这个时机被执行了
=============================================