Java | 异常类和异常继承层次

大家好,我是程序员影子

一名致力于帮助更多朋友快速入门编程的程序猿

今天来聊一聊关于Java 中的异常类和异常继承层次

一、异常的分类

在Java中,异常分为两大类:检查型异常和非检查型异常。检查型异常是那些在编译时必须被捕获的异常,而非检查型异常包括运行时异常(runtime exceptions)和错误(errors)。

demo:

public class ExceptionClassification {
    public static void main(String[] args) {
        try {
            // 假设这是一个检查型异常
            throw new Exception("这是一个检查型异常");
        } catch (Exception e) {
            System.out.println("捕获到了检查型异常:" + e.getMessage());
        }
        try {
            // 这是一个运行时异常
            throw new RuntimeException("这是一个运行时异常");
        } catch (RuntimeException e) {
            System.out.println("捕获到了运行时异常:" + e.getMessage());
        }
    }
}

二、异常继承层次

Java的异常类继承自java.lang.Throwable类,该类有两个主要的子类:ErrorExceptionException类又分为两个子类:CheckedExceptionRuntimeException

三、异常处理的基本结构

在Java中,异常处理通常使用trycatchfinally语句块来实现。这些块用于捕获和处理异常。

demo:

public class BasicExceptionHandling {
    public static void main(String[] args) {
        try {
            // 可能抛出异常的代码
            int[] numbers = {1, 2, 3};
            System.out.println(numbers[3]);  // 数组索引越界
        } catch (ArrayIndexOutOfBoundsException e) {
            // 异常处理代码
            System.out.println("数组索引越界:" + e.getMessage());
        } finally {
            // 一定会执行的代码
            System.out.println("finally块中的代码执行了");
        }
    }
}

四、自定义异常类

可以通过扩展Exception类或其子类来创建自定义的异常类。自定义异常类通常在类名中包含“Exception”或“Error”。

demo:

public class CustomException extends Exception {
    public CustomException(String message) {
        super(message);
    }
}
public class CustomExceptionUsage {
    public static void main(String[] args) {
        try {
            throw new CustomException("这是一个自定义异常");
        } catch (CustomException e) {
            System.out.println("捕获到了自定义异常:" + e.getMessage());
        }
    }
}

以上就是本次分享的所有内容,感兴趣的朋友点个关注呀,感谢大家啦~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值