你真的瞭解try catch finally嗎?(面試題)

一、說明

try catch finally在面試中也是經常遇到的,我現在還是大三嘛,前幾天通過學長內推了阿里的一個實習生職位。昨天預面試了,是一位很好一位哥哥,聽起來聲音也很好聽,應該也很年輕的。聊的也很愉快。

突然聊到了“try catch finally”,那我就把過程通過大白話來寫一下吧,並加上一些分析。

二、捕獲異常與拋出異常的區別

try裏的是可能拋出異常的語句;
catch是用來捕獲異常的;

一個方法如果完全有能力自己處理髮生的錯誤就可以自己處理,如果處理不了這個錯誤,就可以用throw重新拋出

三、首先要明白爲什麼要拋異常?

1、爲了防止遇到異常的時候程序崩潰,影響用戶。
2、拋出的異常也方便了開發人員調試,讓錯誤有跡可循。
3、還能定位錯誤出在什麼地方,當出現了問題時,起碼知道哪裏出問題了。
4、異常處理讓你能控制你的應用按照你的邏輯走(例如:給用戶提示出錯了等)。
當然了,也有很多理由。反之就是壞處了。

四、處理異常的技巧

Java異常處理的原則和技巧

1、避免過大的try塊,不要把不會出現異常的代碼放到try塊裏面,儘量保持一個try塊對應一個或多個異常。
2、細化異常的類型,不要不管什麼類型的異常都寫成Excetpion。
3、catch塊儘量保持一個塊捕獲一類異常,不要忽略捕獲的異常,捕獲到後要麼處理,要麼轉譯,要麼重新拋出新類型的異常。
4、不要把自己能處理的異常拋給別人。
5、不要用try…catch參與控制程序流程,異常控制的根本目的是處理程序的非正常情況。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章