金英華 張巖



摘 要:盡管Java語言的功能非常強大,自身帶有處理大多數異常的類庫,但設計項目編寫程序時還需要自定義一些異常類來滿足特定的需求。自定義異常類需要繼承Exception類和其子類,在需要的時用throw關鍵字引發即可。
關鍵詞:Java,自定義異常類,throws, throw
1、異常的定義
就是在程序運行時由代碼所產生的不正常狀態。換句話來說,異常就是一個運行錯誤。
異常處理的關鍵詞有:try、catch、finally 、throw、throws,共5個。異常處理執行流程,如圖1所示。
在自定義異常時,通常繼承Exception或者子類實現,也可以直接繼承Throwable,格式如下:
public ?class ?自定義異常 ?extends ? Exception{}
3、聲明異常(throw和throws)
在聲明自定義異常時,通throw 和 throws格式如下
(1)返回值類型 ?方法名(參數)throws ?異常類型
(2)throw 異常類型
throws是用來聲明一個異常,拋出所有可能的異常信息,throws只是異常聲明,但不做任何處理。而throw是用來引發對應的catch語句來處理一個具體的異常類型。
4、自定義異常類的應用
本實例是招聘某項工作,需要年齡在20歲~30歲之間,自定義異常類TooyoungerException和TooolderException,若低于20歲便處理TooyoungerException異常的程序,若高于30歲則處理TooolderException異常的程序,從命令行(控制臺)輸入年齡值,然后對年齡進行檢測,合格,便打印合格信息;不合格打印,打印異常信息。
設計程序要實現的運行結果,如圖2所示。
throw語句用于引發異常,程序執行流程將在此處停止,不會繼續執行后面的語句。throw語句將程序執行控制權交給catch語句,由catch語句決定其后的流程。所以throw語句本質上與break、continue、return等語句一樣,都屬于跳轉語句。
throws語句用于聲明可能產生的異常,以便于使用它的其他程序員能夠正確處理。
參考文獻
[1]李卓玲.Java程序設計實用教程.大連理工大學出版社,2005.
[2] 遲勇.Java語言程序設計.大連理工大學出版社,2013.
[3] 遲勇.Java語言程序設計實驗及實訓指導.大連理工大學出版社,2013.