Java异常

异常分类

  1. 编译异常:IO异常(文件操作、网络通信)、SQL异常(连接数据库)、找不到类异常(加载类失败)
  2. 运行时异常:空指针、数组越界、非法参数异常、算术异常(比如分母为0)、类转换异常
  3. 错误:内存溢出、栈内存溢出
在Java中,异常(Exception)可以分为三个主要的分类:检查异常(Checked Exception)、运行时异常(Runtime Exception)和错误(Error)。
  1. 检查异常(Checked Exception) :这类异常必须在代码中进行处理,否则编译器将会报错。它们继承自 java.lang.Exception 类,包括编程逻辑错误、输入输出错误等。一般情况下,程序员应该预见并捕获这些异常,或者向上层方法抛出。常见的检查异常包括 IOException (输入输出异常)、 SQLException (SQL异常)等。
  2. 运行时异常(Runtime Exception) :这类异常是由程序错误导致的,也称为非检查异常。它们继承自 java.lang.RuntimeException 类,通常表示程序中的错误逻辑或操作。运行时异常在编译阶段不需要显式地声明或捕获,但在运行时仍然可能发生。常见的运行时异常包括 NullPointerException (空指针异常)、 ArrayIndexOutOfBoundsException (数组越界异常)等。
  3. 错误(Error) :这类异常表示在程序运行过程中发生了严重的问题,通常是无法恢复的错误。错误继承自 java.lang.Error 类,一般由JVM(Java虚拟机)抛出,例如内存溢出错误(OutOfMemoryError)和栈溢出错误(StackOverflowError)等。与异常不同,一般不应该捕获错误,而是要采取适当的措施来修复问题。

处理异常关键字

1、处理异常:try-catch-finally
  Try: 可能会有异常的代码块
  catch中操作: 如打印异常信息、日志记录、重新抛出异常等
   finally:用于定义无论异常是否发生都会执行的代码块。
2、抛出异常 :throw
3、声明异常:throws

常见异常

编译时异常(Checked Exception):
  1. IOException:输入输出异常,如文件操作、网络通信等。
  2. SQLException:SQL 异常,如数据库连接、查询等。
  3. ClassNotFoundException:找不到类异常,当加载类失败时抛出。
  4. NoSuchMethodException:找不到方法异常,当调用方法不存在时抛出。
  5. InterruptedException:线程中断异常,当线程在等待、休眠或阻塞时被中断时抛出。
运行时异常(Unchecked Exception):
  1. NullPointerException:空指针异常,当引用为空时调用其方法或访问其属性时抛出。
  2. ArrayIndexOutOfBoundsException:数组索引越界异常,当访问数组超出有效索引范围时抛出。
  3. IllegalArgumentException:非法参数异常,当传递给方法的参数不合法时抛出。
  4. ClassCastException:类转换异常,当试图将对象强制转换为不兼容的类型时抛出。
  5. ArithmeticException:算术异常,如除以零等数学运算异常。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值