課程
/后端開發(fā)
/Java
/Java入門第三季
問問為什么要用異常,直接用if語(yǔ)句限定條件不行嗎
2018-05-04
源自:Java入門第三季 1-3
正在回答
為什么要用異常,個(gè)人認(rèn)為:
1、因?yàn)楫惓0芏喈惓?,例如我們現(xiàn)在知道的數(shù)據(jù)的類型錯(cuò)誤,超過邊界值的異常以及自定義的一些你能想到的異常等,但還有大量的你想不到的異常,如果使用if限定的比較局限,但是使用異常就可以拋出很多你意想不到問題
2、就是if在程序中是非常多的,如果把異常也用if去寫,對(duì)于后期代碼的維護(hù)是很困難的,可能你知道你在哪寫了if是判斷相應(yīng)的條件,在哪寫了if去判斷異常,但是你離職了,換了其他人去維護(hù)就懵了,可能需要大量的時(shí)間去適應(yīng)你的代碼,找出問題,再去修改和維護(hù)。
3、使用try catch finally去捕獲異常時(shí)有自己的執(zhí)行順序,捕獲異常后也能執(zhí)行finally的語(yǔ)句及后面的語(yǔ)句,這已經(jīng)是java為我們寫好的一個(gè)框架,如果也要完成相應(yīng)的執(zhí)行順序,可能你的if代碼就會(huì)很多,顯得代碼很亂
所以在認(rèn)為有異常時(shí)盡量的使用try catch去捕獲異常,既能很好的提示異常,又能保證代碼的簡(jiǎn)潔、規(guī)范,方便維護(hù),如有不對(duì)請(qǐng)各位幕友勿噴,我也是剛學(xué)不久,以上僅個(gè)人見解~~
風(fēng)蘭 提問者
運(yùn)行時(shí)異常是無(wú)法預(yù)料的,可能老師舉的例子比較簡(jiǎn)單,讓你產(chǎn)生了可以用if的錯(cuò)覺。
往往一些復(fù)雜的項(xiàng)目,不是幾行if語(yǔ)句就搞定的。為了代碼的健壯性,需要用異常
舉報(bào)
Java中你必須懂得常用技能,不容錯(cuò)過的精彩,快來(lái)加入吧
4 回答異常處理問題
3 回答異常處理問題
3 回答異常處理:
3 回答關(guān)于異常處理finally的問題
1 回答異常處理的作用
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號(hào)-11 京公網(wǎng)安備11010802030151號(hào)
購(gòu)課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動(dòng)學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號(hào)
2018-05-04
為什么要用異常,個(gè)人認(rèn)為:
1、因?yàn)楫惓0芏喈惓?,例如我們現(xiàn)在知道的數(shù)據(jù)的類型錯(cuò)誤,超過邊界值的異常以及自定義的一些你能想到的異常等,但還有大量的你想不到的異常,如果使用if限定的比較局限,但是使用異常就可以拋出很多你意想不到問題
2、就是if在程序中是非常多的,如果把異常也用if去寫,對(duì)于后期代碼的維護(hù)是很困難的,可能你知道你在哪寫了if是判斷相應(yīng)的條件,在哪寫了if去判斷異常,但是你離職了,換了其他人去維護(hù)就懵了,可能需要大量的時(shí)間去適應(yīng)你的代碼,找出問題,再去修改和維護(hù)。
3、使用try catch finally去捕獲異常時(shí)有自己的執(zhí)行順序,捕獲異常后也能執(zhí)行finally的語(yǔ)句及后面的語(yǔ)句,這已經(jīng)是java為我們寫好的一個(gè)框架,如果也要完成相應(yīng)的執(zhí)行順序,可能你的if代碼就會(huì)很多,顯得代碼很亂
所以在認(rèn)為有異常時(shí)盡量的使用try catch去捕獲異常,既能很好的提示異常,又能保證代碼的簡(jiǎn)潔、規(guī)范,方便維護(hù),如有不對(duì)請(qǐng)各位幕友勿噴,我也是剛學(xué)不久,以上僅個(gè)人見解~~
2018-05-04
運(yùn)行時(shí)異常是無(wú)法預(yù)料的,可能老師舉的例子比較簡(jiǎn)單,讓你產(chǎn)生了可以用if的錯(cuò)覺。
2018-05-04
往往一些復(fù)雜的項(xiàng)目,不是幾行if語(yǔ)句就搞定的。為了代碼的健壯性,需要用異常