public static int test1(){ int a=0; try{ a=1; return a; }finally { System.out.println("it "); a=2; return a; } } public static void main(String[] args) { int b=test1(); System.out.println(b); }
输出:it 2
注释掉第二个return a; 输出 : it 1
利用 return 语句从 try 语句块中退出。在方法返回前,finally子句的内容将被执行。如果 finally 子句中也有一个 return 语句,这个返回值将会覆盖原始的返回值。