当前位置: 首页 > 编程笔记 >

java异常和错误类总结(必看篇)

诸葛彦
2023-03-14
本文向大家介绍java异常和错误类总结(必看篇),包括了java异常和错误类总结(必看篇)的使用技巧和注意事项,需要的朋友参考一下

java异常和错误类总结

最近由于考试和以前的面试经常会遇到java当中异常类的继承层次的问题,弄得非常头大,因为java的异常实在是有点多,很难记下来,今天正好查了一些资料整理下来,希望对自己和大家有点帮助。最开始的时候习惯用笔记本(手写的纸质的本子)记笔记,后来发现查阅的时候不是很方便,而且速度比较慢。后来改用notepad开始记,感觉效果挺棒,简单易用,没有花哨的东西。但是也有它的缺点,比如版式的整理,不能加入一些图片(往往图片特别是一些大纲是非常好的记忆学习方法)等等,于是尝试用markdown开始写,放到博客上以后查阅方便,也能让大家分享,一起学习进步。从开始学习计算机相关领域直到现在,非常感谢很多国内外大牛无私的分享,真的学到了很多,以后不断的学习知识的同时,以此自勉,也要多多写点东西和大家分享,欢迎指出不足和错误之处,一起学习。

一、java异常和错误的主要类

java异常分为异常和错误,Exception和Error,两个类,者这两个类都继承自Throwable类,Throwable是所有java异常的根。

java所有的异常类包括Throwable,Exception,Error都是类,所以都是可以实例化的(笔试经常会遇到)

Error:不能被程序很好处理的错误(cannot be handled reasonably by program)

机器的内存不够了

JVM崩溃了(是程序都有可能挂掉)

线程挂掉了

Exception:可以被程序处理的(can be handled by program)

IO错误(键盘,磁盘)

网络错误

不合法的类型转换

数组或者容器越界

java的异常一般会分为运行时异常和非运行时异常

运行时异常就是RunTimeException的所有子类

非运行时异常就是Exception的其他所有孩子类,比如IOException,InterruptedException

二、java异常结构图

三、java异常详细的类层次结构

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异常和错误类总结(必看篇)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持小牛知识库。

 类似资料:
  • 本文向大家介绍linux C编程常见的错误总结(必看篇),包括了linux C编程常见的错误总结(必看篇)的使用技巧和注意事项,需要的朋友参考一下 定义 所谓的段错误就是指访问的内存超出了系统所给这个程序的内存空间,通常这个值是由gd tr来保存的,他是一个48位的寄存器,其中的32位是保存由它指向的 gdt表,后13位保存 相应于gdt的下标,最后3位包括了程序是否在内存中以及程序的在cpu中的

  • 本文向大家介绍Java的异常类型总结,包括了Java的异常类型总结的使用技巧和注意事项,需要的朋友参考一下 Java的设计目的是让程序员有机会设计一个没有错误的应用程序。当应用程序与资源或用户交互时,程序员可能会知道一些异常,这些异常是可以处理的。不幸的是,也有程序员无法控制或简单忽略的例外情况。简而言之,并不是所有的异常都是相同的,因此程序员需要考虑几种类型。 异常是导致程序无法在其预期的执行中

  • 本文向大家介绍Eclipse常用快捷键总结(必看篇),包括了Eclipse常用快捷键总结(必看篇)的使用技巧和注意事项,需要的朋友参考一下 Alt+/                                内容辅助 最常用的快捷键,省去了自己一个字一个字敲代码的时间 Ctrl+Shift+F                        格式化文档 Ctrl+Shift+O        

  • 本文向大家介绍java基础之数组常用操作总结(必看篇),包括了java基础之数组常用操作总结(必看篇)的使用技巧和注意事项,需要的朋友参考一下 常用的对数组进行的操作 1、求数组中最大值,最小值 思路:假设下标为0的元素是最大值,遍历数组,依次跟max进行比较,如果有元素比这个max还大,则把这个值赋给max。最小值同样 2、查找数组中是否存在某个元素 (2)、用二分查找法查找数组中是否存在某个元

  • 本文向大家介绍Java枚举的七种常见用法总结(必看),包括了Java枚举的七种常见用法总结(必看)的使用技巧和注意事项,需要的朋友参考一下 用法一:常量 在JDK1.5之前,我们定义常量都是:publicstaticfianl....。现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法。 Java代码 用法二:switch JDK1.6之前的switch语句只

  • 本文向大家介绍Java中的对象流总结(必看篇),包括了Java中的对象流总结(必看篇)的使用技巧和注意事项,需要的朋友参考一下 Java中可以通过对象流将一个序列化的对象保存到硬盘中,或者硬盘中读取一个对象。对象流的存储和读取包含以下几点内容: 1、所保存的对象必须实现Serializable接口。 2、 所保存的对象的属性也必须实现Serializable接口。 3、 最好要给该对象提供一个版本