Java内置异常体系分类和核心方法

Java内置异常体系分类和核心方法

一、介绍什么是异常,java出现异常的场景
  • 什么是错误
    • 程序运⾏时发⽣的不被期望的事件,阻⽌了程序按照预期正常执⾏
    • 常⻅程序错误分三类
      • 编译错误:新⼿最常⻅,没遵循语法规范
      • 运⾏时错误:程序在执⾏时,
      • 逻辑错误:程序没有按照预期的逻辑顺序执⾏
  • Java.lang软件包中有⼀个java.lang.Throwable类,这个类是java中所有错误和异常的超类,Throwable类有两个⼦类,Error与 Exception
    • Error
      • 是Throwable 的⼦类,包含⼤量⼦类
      • 出错后程序⽆法处理,如OutOfMemoryError
    • Exception
      • 是Throwable 的⼦类,包含⼤量⼦类
      • 程序本身可以处理的异常,如ArrayIndexOutOfBoundException
      • 两⼤类
        • 可查异常(编译器要求必须处置的异常):RuntimeException及其⼦类以外,其他的Exception类及其⼦类, 如 IOException和ClassNotFoundException
        • 不可查异常(编译器不要求强制处置的异常): 包括运⾏时异常(RuntimeException与其⼦类)和错误(Error),如ArrayIndexOutOfBoundsException

在这里插入图片描述

二、讲解java内置的异常和Throwable核心方法介绍
  • java内置异常
    • 可查异常(必须要在⽅法⾥⾯捕获或者抛出)
      • ClassNoFoundException 应⽤程序试图加载类,找不到对应的类
      • IllegalAccessException 拒绝访问⼀个类的时候
      • NoSuchFieldExcetion 请求的变量不存在
      • NoSuchMethodException ⽅法不存在
    • 不可查异常
      • ArrayIndexOutOfBoundsException 数组索引越界
      • ClassCastException 强制失败抛出异常
      • NullPointerException 需要对象的地⽅使⽤ null 时,抛出该异常
      • NumberFormatException 将字符串转换成⼀种数值类型,但该字符串不能转换为适当格式时,抛出该异常
    • Throwable类核⼼⽅法
      • public String getMessage()
        • 异常的详细信息
      • public Throwable getCause()
        • 异常原因
      • public void printStackTrace()
        • 打印错误的堆栈信息,即错误输出流,可以看到错误原因和所在位置
      • public StackTraceElement [] getStackTrace()
        • 堆栈层次的数组,下标为0的元素代表栈顶,最后⼀个元素代表⽅法调⽤堆栈的栈底

猜你喜欢

转载自blog.csdn.net/ruan_luqingnian/article/details/113385665
今日推荐