java 中try catch finally执行顺序

原创 2016年08月31日 14:57:13

1.finally实在try  catch结束后执行的。

2.try catch 有return 时,在执行完return后面的表达式之后,执行finally,最后执行return;

   try catch 没有有return 时,在执行完try catch,执行finally

3.finally 中最好不能有return。try catch 还没return ,就先执行了finally里的return,导致return 的值跟try catch 中期望的值不一样。

例子:


try{ return;}catch(){return;} finally{return;}

程序执行try块中return之前(包括return语句中的表达式运算)代码;
1.有异常:执行catch块中return之前(包括return语句中的表达式运算)代码;
    则再执行finally块,因为finally块中有return所以提前退出。
2.无异常:执行try中return之前,执行finally块,因为finally块中有return所以提前退出。

finally中有return会吃掉异常的

相关文章推荐

java try catch finally 执行顺序

结论: 不管有木有出现异常,finally块中代码都会执行; 当try和catch中有return时,finally仍然会执行; finally是在return后面的表达式运算后执行的(此时并没有返回...

浅析Java try....catch....finally中return语句执行顺序

浅析Java try….catch….finally中return语句执行顺序

Java try/catch/finally代码块中加入return后的执行顺序问题

finally可以分两方面理解 1.执行时机问题。finally总会执行(除非是System.exit()),正常情况下在try后执行,抛异常时在catch后面执行 2.返回值问题。可以认...

Java含有return 的try catch finally的执行顺序

1、try-catch-finally执行顺序: 一、执行try{}块; 二、如果try{}块有异常产生,执行catch{}块; 三、无论有没有异常都要执行finally{}块,这里可以看出只要...

Java-有return的情况下try catch finally的执行顺序(最有说服力的总结)

结论: 1、不管有木有出现异常,finally块中代码都会执行; 2、当try和catch中有return时,finally仍然会执行; 3、finally是在return后面的表达式运算后执行的(此...
  • ko_tin
  • ko_tin
  • 2016年11月29日 00:17
  • 150

java 有return的情况下try catch finally的执行顺序

结论: 1、不管有木有出现异常,finally块中代码都会执行; 2、当try和catch中有return时,finally仍然会执行; 3、finally是在return后面的表达式运算后执行的(此...
  • eunyeon
  • eunyeon
  • 2016年10月21日 09:54
  • 148

Java异常捕获之try-catch-finally-return的执行顺序

情况1:try块中没有抛出异常try和finally块中都有return语句 public static int NoException(){ int i=10; try{ S...
  • aaoxue
  • aaoxue
  • 2013年01月23日 21:45
  • 11085

【Java】try、catch、finally的执行顺序与返回值问题

笔试很多时候都会考try、catch、finally的执行顺序,网上也有很多文章记录他们的执行顺序,但是都是根据代码执行结果推规律,有种死记硬背的感觉。从字节码反编译后的代码可以查看try、catch...

Android面试之java基础try-catch-finally-return的执行先后顺序问题

还是一个被个程序猿们讨论多时的问题,也是众软件公司面试题中很钟情的一个问题,更是一个考查程序猿对Java基础知识掌握理解程度的问题,就是本文要说的try-catch-finally-return的执行...

关于Java中try-catch-finally-return的执行顺序

1、try块中没有抛出异常,try、catch和finally块中都有return语句 1 2 3 4 5 6 7 8 9...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:java 中try catch finally执行顺序
举报原因:
原因补充:

(最多只允许输入30个字)