Java的finally执行顺序_Java return和finally执行顺序
在Java語法中,return表示當(dāng)前執(zhí)行的結(jié)束,finally則是在當(dāng)前代碼塊一定會(huì)執(zhí)行的代碼塊。如果return在finally在之前執(zhí)行,finally也會(huì)執(zhí)行嗎?答案是肯定的!
但是,finally和return的執(zhí)行順序則并不是真正意義上的先后順序。
1 public String test(){
2 String s = "";
3 try {
4 s = "try";
5 System.out.println(s);
6 return s;
7 } catch (Exception e) {
8 s = "catch";
9 return s;
10 } finally {
11 System.out.println(s);
12 s = "finally";
13 System.out.println(s);
14 }
15 }
在上面的代碼中,最后的輸出finally,但是test方法返回的參數(shù)值確實(shí)try。
個(gè)人認(rèn)為,這個(gè)先后順序沒有計(jì)較的價(jià)值。需要知道的是:
1、finally執(zhí)行的時(shí)候并不能改變返回參數(shù)的值;
2、finally代碼塊中最后不要用return;
3、finally和return一起使用,finally是會(huì)被執(zhí)行的。
測(cè)試JDK:java version "1.6.0_45"
時(shí)間: 04-16
《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀總結(jié)
以上是生活随笔為你收集整理的Java的finally执行顺序_Java return和finally执行顺序的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java 俄语 工作_工作俄语怎么说
- 下一篇: java与c内存管理_Java基础--J