java異常和錯(cuò)誤類總結(jié)(必看篇)
java異常和錯(cuò)誤類總結(jié)
最近由于考試和以前的面試經(jīng)常會(huì)遇到j(luò)ava當(dāng)中異常類的繼承層次的問題,弄得非常頭大,因?yàn)閖ava的異常實(shí)在是有點(diǎn)多,很難記下來(lái),今天正好查了一些資料整理下來(lái),希望對(duì)自己和大家有點(diǎn)幫助。最開始的時(shí)候習(xí)慣用筆記本(手寫的紙質(zhì)的本子)記筆記,后來(lái)發(fā)現(xiàn)查閱的時(shí)候不是很方便,而且速度比較慢。后來(lái)改用notepad開始記,感覺效果挺棒,簡(jiǎn)單易用,沒有花哨的東西。但是也有它的缺點(diǎn),比如版式的整理,不能加入一些圖片(往往圖片特別是一些大綱是非常好的記憶學(xué)習(xí)方法)等等,于是嘗試用markdown開始寫,放到博客上以后查閱方便,也能讓大家分享,一起學(xué)習(xí)進(jìn)步。從開始學(xué)習(xí)計(jì)算機(jī)相關(guān)領(lǐng)域直到現(xiàn)在,非常感謝很多國(guó)內(nèi)外大牛無(wú)私的分享,真的學(xué)到了很多,以后不斷的學(xué)習(xí)知識(shí)的同時(shí),以此自勉,也要多多寫點(diǎn)東西和大家分享,歡迎指出不足和錯(cuò)誤之處,一起學(xué)習(xí)。
一、java異常和錯(cuò)誤的主要類
java異常分為異常和錯(cuò)誤,Exception和Error,兩個(gè)類,者這兩個(gè)類都繼承自Throwable類,Throwable是所有java異常的根。
java所有的異常類包括Throwable,Exception,Error都是類,所以都是可以實(shí)例化的(筆試經(jīng)常會(huì)遇到)
Error:不能被程序很好處理的錯(cuò)誤(cannot be handled reasonably by program)
機(jī)器的內(nèi)存不夠了
JVM崩潰了(是程序都有可能掛掉)
線程掛掉了
…
Exception:可以被程序處理的(can be handled by program)
IO錯(cuò)誤(鍵盤,磁盤)
網(wǎng)絡(luò)錯(cuò)誤
不合法的類型轉(zhuǎn)換
數(shù)組或者容器越界
java的異常一般會(huì)分為運(yùn)行時(shí)異常和非運(yùn)行時(shí)異常
運(yùn)行時(shí)異常就是RunTimeException的所有子類
非運(yùn)行時(shí)異常就是Exception的其他所有孩子類,比如IOException,InterruptedException
二、java異常結(jié)構(gòu)圖
三、java異常詳細(xì)的類層次結(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ò)誤類總結(jié)(必看篇)就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
詳解Servlet3.0新特性(從注解配置到websocket編程)
Servlet3.0的出現(xiàn)是servlet史上最大的變革,其中的許多新特性大大的簡(jiǎn)化了web應(yīng)用的開發(fā),為廣大勞苦的程序員減輕了壓力,提高了web開發(fā)的效率。2017-04-04Elasticsearch 映射參數(shù)詳解 fields
這篇文章主要介紹了fields Elasticsearch 映射參數(shù)fields,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-07-07Java基礎(chǔ)詳解之集合框架工具Collections
這篇文章主要介紹了Java基礎(chǔ)詳解之集合框架工具Collections,文中有非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)java的小伙伴們有很好地幫助,需要的朋友可以參考下2021-04-04springMVC+jersey實(shí)現(xiàn)跨服務(wù)器文件上傳
這篇文章主要介紹了springMVC+jersey實(shí)現(xiàn)跨服務(wù)器文件上傳,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-08-08java文件重命名(文件批量重命名)實(shí)例程序代碼分享
這篇文章主要介紹了java文件重命名的程序代碼,大家參考使用吧2013-12-12springcloud 熔斷監(jiān)控Hystrix Dashboard和Turbine
這篇文章主要介紹了springcloud 熔斷監(jiān)控Hystrix Dashboard和Turbine,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08Spring Boot中優(yōu)雅的獲取yml文件工具類
今天小編就為大家分享一篇關(guān)于Spring Boot中優(yōu)雅的獲取yml文件工具類,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2018-12-12