更新時間:2020-05-19 16:20:46 來源:動力節點 瀏覽2712次
問題:
1.請描述異常的繼承體系
2.請描述你對錯誤(Error)的理解
3.請描述你對異常(Expection的理解)
4.請描述你對運行時異常(RuntimeException)的理解
答:
1.異常繼承體系為:異常的根類是java.lang.Throwable,其下有兩個子類:
java.lang.Error與java.util.Exception。而Exception又分為編譯時期異常:checked異常,與運行時期異常:runtime異常。
2.Error:表示不可修復的惡性的錯誤,只能通過修改代碼規避錯誤的產生,通常是系統級別的,所以很嚴重。
3.Exception:表示可修復的良性(相對于錯誤)的異常,異常產生后程序員可以并且應該通過代碼的方式糾正,使程序繼續運行,是必須要處理的。
4.運行時期異常:runtime異常。在運行時期,檢查異常.在編譯時期,運行異常不會編譯器檢測(不報錯)。
問題:
1.請描述throw的使用位置,作用是什么?
2.請描述throws的使用位置,作用是什么?
答:
1.throw關鍵字通常用在方法體中,并且拋出一個異常對象。程序在執行到throw語句時立即停止,它后面的語句都不執行。
2.throws關鍵字通常被應用在聲明方法時,用來指定可能拋出的異常。多個異常可以使用逗號隔開。當在主函數中調用該方法時,如果發生異常,就會將異常對象拋給方法調用處。
問題:
1.異常處理方式有幾種,分別是什么?
2.詳細闡述每種方式對異常是如何處理的
答:
1.異常的處理方式有兩種,分別是使用throws和try…catch…finally
2.throws用在方法的聲明上后接異常類名,是把異常拋給調用者進行處理
3.try…catch…finally是捕獲異常,自己處理,處理完畢后面的程序可以繼續運行
a)try代碼塊中是可能出現異常的代碼
b)catch代碼塊,是遇到異常,對異常進行處理的代碼
c)finally代碼塊是無論是否發生異常,都必須執行的代碼,用于釋放資源.
問題:請列舉常見異常,并說明產生原因。
答:
NullPointerException:空指針異常。
當應用試圖在要求使用對象的地方使用了null時,拋出該異常。譬如:調用null對象的實例方法、訪問null對象的屬性、計算null對象的長度等等。
ArrayIndexOutOfBoundsException:數組索引越界異常。
當對數組的索引值為負數或大于等于數組大小時拋出此異常。
ArithmeticException:算術運算異常。
程序中出現了除以零這樣的運算就會出這樣的異常,對這種異常,大家就要好好檢查一下自己程序中涉及到數學運算的地方,公式是不是有不妥了。
NumberFormatException:數字格式異常。
當試圖將一個String轉換為指定的數字類型,而該字符串確不滿足數字類型要求的格式時,拋出該異常。
注意:答案不唯一,合理即可。
以上就是動力節點java培訓機構的小編針對“大家經常能學到的Java異常練習題”的內容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習