一般分為Checked異常和Runtime異常暇榴,所有RuntimeException類及其子類的實(shí)例被稱為Runtime異常蔼紧,不屬于該范疇的異常則被稱為CheckedException狠轻。
Checked 異常
Checked異常都是可以被處理的異常,必須顯示處理Checked異常。
Checked異常處理方法有兩種
- 當(dāng)前方法知道如何處理該異常谐区,則用try...catch塊來處理該異常逻卖。
- 當(dāng)前方法不知道如何處理,則在定義該方法是聲明拋出該異常评也。
我們比較熟悉的Checked異常有
Java.lang.ClassNotFoundException
Java.lang.NoSuchMetodException
java.io.IOException
runtime 異常
Runtime如除數(shù)是0和數(shù)組下標(biāo)越界等,其產(chǎn)生頻繁坤邪,處理麻煩罚缕,若顯示申明或者捕獲將會對程序的可讀性和運(yùn)行效率影響很大。所以由系統(tǒng)自動(dòng)檢測并將它們交給缺省的異常處理程序邮弹。當(dāng)然如果你有處理要求也可以顯示捕獲它們。
我們比較熟悉的RumtimeException類的子類有
Java.lang.ArithmeticException
Java.lang.ArrayStoreExcetpion
Java.lang.ClassCastException
Java.lang.IndexOutOfBoundsException
Java.lang.NullPointerException