try、catch、return【转】

try、catch、return

我相信,大家细细调动下面的java程序,一定会有自己的收获:答案写在本文后评论的第一条内


public class hello {

public static void main(String args[]){
System.out.println(kkk());

}

public static int kkk(){
int k = 0;
try {
k += 2; //k=2
return k;
} catch(Exception e){
k++;
 System.out.println("catch-----------catch");
return k;
} finally {
int m;
k += 5; //k=7
m=k;

System.out.println(k);
System.out.println("11111111");
System.out.println("222222222222222");
}
}
}  

我的总结:在try、catch中,代码顺序执行;

这分为两种情况,一是try的代码中无异常;二是try的代码中有异常

    对于无异常的不会执行chatch的代码、如果有异常则执行异常的代码,返回异常中的return语句

    finally中的代码最后执行,即使finally中有return语句,也会在try和catch中的return执行返回结果后,再执行finally中的return语句,最终结果由finally的return决定,如果finally中无return则结果取决于try、catch。

 http://hi.baidu.com/%BC%D6%B5%BA%D7%ED%C0%B4%B7%C7%BC%D9%B5%B9/blog/item/c37023133814b444f819b849.html

配套阅读:

http://bbs.51cto.com/thread-554377-1.html

你可能感兴趣的:(try、catch、return【转】)