java異常和錯(cuò)誤類(lèi)總結(jié)(必看篇)
java異常和錯(cuò)誤類(lèi)總結(jié)
最近由于考試和以前的面試經(jīng)常會(huì)遇到j(luò)ava當(dāng)中異常類(lèi)的繼承層次的問(wèn)題,弄得非常頭大,因?yàn)閖ava的異常實(shí)在是有點(diǎn)多,很難記下來(lái),今天正好查了一些資料整理下來(lái),希望對(duì)自己和大家有點(diǎn)幫助。最開(kāi)始的時(shí)候習(xí)慣用筆記本(手寫(xiě)的紙質(zhì)的本子)記筆記,后來(lái)發(fā)現(xiàn)查閱的時(shí)候不是很方便,而且速度比較慢。后來(lái)改用notepad開(kāi)始記,感覺(jué)效果挺棒,簡(jiǎn)單易用,沒(méi)有花哨的東西。但是也有它的缺點(diǎn),比如版式的整理,不能加入一些圖片(往往圖片特別是一些大綱是非常好的記憶學(xué)習(xí)方法)等等,于是嘗試用markdown開(kāi)始寫(xiě),放到博客上以后查閱方便,也能讓大家分享,一起學(xué)習(xí)進(jìn)步。從開(kāi)始學(xué)習(xí)計(jì)算機(jī)相關(guān)領(lǐng)域直到現(xiàn)在,非常感謝很多國(guó)內(nèi)外大牛無(wú)私的分享,真的學(xué)到了很多,以后不斷的學(xué)習(xí)知識(shí)的同時(shí),以此自勉,也要多多寫(xiě)點(diǎn)東西和大家分享,歡迎指出不足和錯(cuò)誤之處,一起學(xué)習(xí)。
一、java異常和錯(cuò)誤的主要類(lèi)
java異常分為異常和錯(cuò)誤,Exception和Error,兩個(gè)類(lèi),者這兩個(gè)類(lèi)都繼承自Throwable類(lèi),Throwable是所有java異常的根。
java所有的異常類(lèi)包括Throwable,Exception,Error都是類(lèi),所以都是可以實(shí)例化的(筆試經(jīng)常會(huì)遇到)
Error:不能被程序很好處理的錯(cuò)誤(cannot be handled reasonably by program)
機(jī)器的內(nèi)存不夠了
JVM崩潰了(是程序都有可能掛掉)
線程掛掉了
…
Exception:可以被程序處理的(can be handled by program)
IO錯(cuò)誤(鍵盤(pán),磁盤(pán))
網(wǎng)絡(luò)錯(cuò)誤
不合法的類(lèi)型轉(zhuǎn)換
數(shù)組或者容器越界
java的異常一般會(huì)分為運(yùn)行時(shí)異常和非運(yùn)行時(shí)異常
運(yùn)行時(shí)異常就是RunTimeException的所有子類(lèi)
非運(yùn)行時(shí)異常就是Exception的其他所有孩子類(lèi),比如IOException,InterruptedException
二、java異常結(jié)構(gòu)圖

三、java異常詳細(xì)的類(lèi)層次結(jié)構(gòu)
java.lang包里面的所有異常
java.lang.Throwable (implements java.io.Serializable)
java.lang.Error
java.lang.AssertionError
java.lang.LinkageError
java.lang.BootstrapMethodError
java.lang.ClassCircularityError
java.lang.ClassFormatError
java.lang.UnsupportedClassVersionError
java.lang.ExceptionInInitializerError
java.lang.IncompatibleClassChangeError
java.lang.AbstractMethodError
java.lang.IllegalAccessError
java.lang.InstantiationError
java.lang.NoSuchFieldError
java.lang.NoSuchMethodError
java.lang.NoClassDefFoundError
java.lang.UnsatisfiedLinkError
java.lang.VerifyError
java.lang.ThreadDeath
java.lang.VirtualMachineError
java.lang.InternalError
java.lang.OutOfMemoryError
java.lang.StackOverflowError
java.lang.UnknownError
java.lang.Exception
java.lang.CloneNotSupportedException
java.lang.InterruptedException
java.lang.ReflectiveOperationException
java.lang.ClassNotFoundException
java.lang.IllegalAccessException
java.lang.InstantiationException
java.lang.NoSuchFieldException
java.lang.NoSuchMethodException
java.lang.RuntimeException
java.lang.ArithmeticException
java.lang.ArrayStoreException
java.lang.ClassCastException
java.lang.EnumConstantNotPresentException
java.lang.IllegalArgumentException
java.lang.IllegalThreadStateException
java.lang.NumberFormatException
java.lang.IllegalMonitorStateException
java.lang.IllegalStateException
java.lang.IndexOutOfBoundsException
java.lang.ArrayIndexOutOfBoundsException
java.lang.StringIndexOutOfBoundsException
java.lang.NegativeArraySizeException
java.lang.NullPointerException
java.lang.SecurityException
java.lang.TypeNotPresentException
java.lang.UnsupportedOperationException
java.io包里的所有IO異常
ava.lang.Exception
java.io.IOException
java.io.CharConversionException
java.io.EOFException
java.io.FileNotFoundException
java.io.InterruptedIOException
java.io.ObjectStreamException
java.io.InvalidClassException
java.io.InvalidObjectException
java.io.NotActiveException
java.io.NotSerializableException
java.io.OptionalDataException
java.io.StreamCorruptedException
java.io.WriteAbortedException
java.io.SyncFailedException
java.io.UnsupportedEncodingException
java.io.UTFDataFormatException
以上這篇java異常和錯(cuò)誤類(lèi)總結(jié)(必看篇)就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
深入理解Java8新特性之接口中的默認(rèn)方法和靜態(tài)方法
從Java8開(kāi)始,程序允許在接口中包含帶有具體實(shí)現(xiàn)的方法,使用default修飾,這類(lèi)方法就是默認(rèn)方法。默認(rèn)方法在接口中可以添加多個(gè),并且Java8提供了很多對(duì)應(yīng)的接口默認(rèn)方法,接下來(lái)讓我們一起來(lái)看看吧2021-11-11
spring security登錄成功后跳轉(zhuǎn)回登錄前的頁(yè)面
這篇文章主要介紹了spring security登錄成功后跳轉(zhuǎn)回登錄前的頁(yè)面,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-09-09
springboot集成redis實(shí)現(xiàn)消息的訂閱與發(fā)布
本文主要介紹了springboot集成redis實(shí)現(xiàn)消息的訂閱與發(fā)布,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2024-05-05
關(guān)于使用Lambda表達(dá)式簡(jiǎn)化Comparator的使用問(wèn)題
這篇文章主要介紹了關(guān)于使用Lambda表達(dá)式簡(jiǎn)化Comparator的使用問(wèn)題,文中圖文講解了Comparator對(duì)象的方法,需要的朋友可以參考下2023-04-04
Java中的大數(shù)類(lèi)簡(jiǎn)單實(shí)現(xiàn)
這篇文章主要介紹了Java中的大數(shù)類(lèi)簡(jiǎn)單實(shí)現(xiàn)的相關(guān)資料,需要的朋友可以參考下2017-03-03
java普通類(lèi)如何轉(zhuǎn)javafx程序
這篇文章主要介紹了java普通類(lèi)如何轉(zhuǎn)javafx程序方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-08-08

