public class FinnallyTest {
public static void main(String[] args){
System.out.print(go());
}
public static int go(){
int a=1;
try{
++a;
//临时变量 a=2,返回2,a此时等于3
//return a++;
}finally{
//临时变量 a=5
a=5;
return ++a;
//return a; 此处返回,则会是 5
}
}
}
总结:
1. try和finally在返回前,都会生成一个临时变量。
2.return a++,先返回a的值,a再加1, return ++a,a先加1 ,再返回a的值 。