亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

那不就是不寫finally更省事?

那不就是不寫finally更省事?

哈士奇WWW 2023-01-12 22:18:11
如:try{...}catch(Exception e){...}finally{System.out.println(e)}和try{...}catch(Exception e){...}System.out.println(e);它們的System.out.println(e)都會執行;那寫在finally{}里面有什么用?
查看完整描述

1 回答

?
喵喔喔

TA貢獻1735條經驗 獲得超5個贊

try{}catch(){}finally{}該結構是用來捕捉異常信息的,異常來源于try塊中,在catch中進行處理finally可以對資源進行釋放或其他操作1.假如在try中沒有異常產生,并returnfinally仍然會執行,將return的結果保存,執行完finally在return2,在1的基礎上,如果finally中最后也return那個,try中的return會失效,執行finally中return3.如果try或者catch(有異常的情況下)中不是return而是寫的是System.exit(0);那么finally此時不執行,直接關閉虛擬機。4.在2的基礎上,如果finally中嵌套tryfinally結構的話,執行完finally里面的try在執行finally中的finally5.在4的基礎上如下代碼會產生錯誤try{}catch(){}finally{try{}catch(){}finally{return1;}return0;}因為finally要求代碼必須被執行,虛擬機此時不知道return1必須被執行,還是return0必須被執行,因為他么都在finally中,希望對你有所幫助

查看完整回答
反對 回復 2023-01-15
  • 1 回答
  • 0 關注
  • 104 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號