Java面向物件8-異常
一、異常的體系結構:
java.lang.Throwable
|-----java.lang.Error:一般不編寫針對性的程式碼進行處理
|-----java.lang.Exception:可以進行異常的處理
|-----編譯時異常(checked)
|-----IOException
|-----FileNotFoundException
|-----ClassNotFoundException
|-----執行時異常(unchecked)
|-----NullPointerException
|-----ArrayIndexOutOfBoundsException
|-----ClassCastException
|-----NumberFormatException
|-----InputMismatchException
|-----ArithmeticException
二、異常的處理方式
①try-catch-finally 真正的處理了異常
②throws + 異常型別,寫在方法的宣告處,只是將異常拋給了方法的呼叫者
三、開發中如何選擇try-catch-finally和throws
3.1如果父類中被重寫的方法沒有throws方式處理異常,則子類重寫的方法也不能使用throws,意味著如果子類重寫的方法中有異常,必須使用try-catch-finally方式處理
3.2執行的方法a中,先後呼叫了另外的幾個方法,這幾個方法是遞進關係執行的,建議這幾個方法使用throws的方式進行處理。而執行的方法a可以考慮使用try-catch-finally