java各种异常总结

一、java异常汇总

1.Throwable 是所有异常的祖先,Throwable有两个子类,Error和Exception;

2.Error是错误,表示运行应用程序中出现了严重错误,都是通过Error抛出的,一般程序无法处理;

Exception是异常,表示程序运行的时候,程序本身可以捕获并可以处理的错误;

3.运行时异常:RuntimeException

(1)NullPointerException(空指针异常)

(2)ClassCastException(类型转换异常)

(3)ArithmeticException(算术异常)——除数为0的算术异常

(4)IllegalArgumentException(非法的参数异常)

NubmerFormatException(数字格式化异常)

(5)IllegalStateException(非法状态异常)

(6)IndexOutOfBoundsException(下标越界异常)

ArrayIndexOutOfBoundsException(数组下标越界异常)

StringIndexOutOfBoundsException(字符串下标越界异常)

(7)NoSuchElementException(没有这样的元素异常)

InputMisMatchException(输入类型不匹配异常)

4.编译时异常

(1)IOException(输入\输出异常)

FileNotFoundException(文件未找到异常)

EOFException(EOF异常)

MalformedURLException(格式错误的 URL 异常)

UnknownHostException(未知主机异常)

(2)SQLException(SQL异常)

(3)CloneNotSupportedException(不支持克隆异常)

(4)ReflectiveOperationException(反射操作异常)

ClassNotFoundException(类未找到异常)

二、捕获异常:

try:执行可能产生异常的代码;

catch:捕获异常;

finally:无论是否发生异常,代码总被执行;

抛出异常:

throw:异常生成阶段,手动抛出异常对象;

声明异常:

throws声明方法可能要抛出的各种异常类

public class Test {

    public static void main(String[] args) throws Exception {

        try {

            System.out.println("test");

            throw new Exception("字符串越界");

        } catch (Exception e) {

            System.out.println(e.getMessage());

            System.out.println(e.toString());

            throw new Exception(e.getMessage());

        } finally {

            System.out.println("finally");

        }

    }

}

打印结果:

test

字符串越界

java.lang.Exception: 字符串越界

finally

 

  • 3
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Java异常是在程序运行过程中发生的错误或异常情况。它们可以分为两种类型:可检查异常(checked exceptions)和不可检查异常(unchecked exceptions)。 可检查异常是在编译时强制要求处理的异常,即必须使用try-catch块或throws语句来处理这些异常。常见的可检查异常包括IOException、SQLException等。 不可检查异常是指RuntimeException及其子类的异常,它们是由程序错误引起的,通常是由编程错误导致的。这些异常在编译时不需要强制要求处理,但也可以选择进行处理。常见的不可检查异常包括NullPointerException、ArrayIndexOutOfBoundsException等。 在Java中,异常处理通过try-catch-finally机制来实现。在try块中编写可能抛出异常的代码,然后使用catch块捕获并处理异常。如果没有适合的catch块来处理异常,则可以使用finally块来执行一些清理操作,无论是否发生了异常。 以下是一个简单的示例代码: ```java try { // 可能抛出异常的代码 // ... } catch (ExceptionType1 e1) { // 处理ExceptionType1类型的异常 // ... } catch (ExceptionType2 e2) { // 处理ExceptionType2类型的异常 // ... } finally { // 清理操作 // ... } ``` 除了try-catch-finally机制外,还可以使用throws关键字声明方法可能抛出的异常,将异常的处理责任交给调用者。 ```java public void doSomething() throws SomeException { // 可能抛出SomeException异常的代码 // ... } ``` 总结一下,Java异常是在程序运行过程中发生的错误或异常情况。通过try-catch-finally机制可以捕获和处理异常,而throws关键字可以声明方法可能抛出的异常。处理异常可以提高程序的健壮性和可靠性。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

linsa_pursuer

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值