一些異常知識小結

 

10:有關異常的知識。<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

一:

printStackTrace( )函數:指出異常的類型,性質,棧層次及出現再程序中的位置。

getMessage( )函數:輸出錯誤的性質。

toString( )函數:給出異常的類型,性質。

二:

Finally 塊必須與try try---catch配合使用。如果  存在,則總會執行。但在以下情況除外:

1》  finally  塊中發生了異常。當try 塊中發生了異常,不管是運行時異常還是被檢查的異常,或是自己拋出了一個異常,finally代碼的後繼部分將不被執行。

2》  程序所在的線程死亡。

3》  當前的代碼中用System.in.read(  )退出運行

4》  關閉CPU。如果在try 塊執行期間拔掉電源,finally 也不會被執行。

 

三:

JAVA中可能會拋出的異常:

1》  調用的方法拋出了異常

2》  檢測到了錯誤並使用 throw 語句拋出異常

3》  程序代碼有錯誤(數組越界錯誤,JAVA運行時刻系統產生內部錯誤)

四:

1》  Error 類中派生出來的異常和從RuntimeException類中派生的異常不用在方法聲明中指定。屬於不檢查異常(unchecked exception. RuntimeException類的錯誤的強制類型轉換,數組越界訪問,空指針操作。其他異常(非RuntimeException類)有:文件指針越界,格式不正確的URL,試圖爲一個不存在的類找一個代表它的Class類的對象當然還有一種稱之爲檢查異常(checked exception)是指那些在程序中應該處理的異常。

 

2》當子類的方法覆蓋了超類的方法時,子類方法的throws 子句中聲明的異常不能多於超類方法中聲明的異常,否則會產生編譯錯誤。因此,如果超類的方法沒有throws  子句,那麼子類中覆蓋它的方法也不能使用throws  子句指明異常。對於接口,情況相同。

 

發佈了31 篇原創文章 · 獲贊 0 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章