zoukankan      html  css  js  c++  java
  • java异常和错误类总结(2016.5)

    看到以前2016.5.写的一点笔记,拿过来放在一起。

    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

  • 相关阅读:
    3.2 直线与方程
    3.1.2 两条直线平等与垂直的判定
    GNU Make
    linux 启动后台进程
    go 占位符
    raft 协议
    restTemplate 接收list数据
    JAVA通过实体类生成数据库查询语句(驼峰命名规则)
    flink使用命令开始、停止任务
    SPringBoot 配置类继承WebMvcConfigurationSupport和实现WebMvcConfigurer的使用
  • 原文地址:https://www.cnblogs.com/robin2ML/p/7250466.html
Copyright © 2011-2022 走看看