Java异常分Checked和Unchecked两类,前者继承Exception但非RuntimeException子类,如IOException,编译期强制处理;后者继承RuntimeException或Error,如NullPointerException,编译期不强制捕获,多因程序逻辑错误导致,应预防而非捕获。

Java中的异常分为两大类:Checked Exception(受检异常)和Unchecked Exception(非受检异常),它们的核心区别在于编译器是否强制要求处理或声明。
这类异常在编译阶段就会被检查,程序必须显式处理,否则无法通过编译。
特点:例如,读取文件时必须处理 IOException:
<font face="Courier New">
try {
FileReader file = new FileReader("data.txt");
} catch (IOException e) {
System.out.println("文件读取失败:" + e.getMessage());
}
</font>这类异常在编译阶段不会被强制检查,程序可以不处理也不会报错。
立即学习“Java免费学习笔记(深入)”;
特点:比如访问数组越界:
<font face="Courier New">
int[] arr = {1, 2, 3};
System.out.println(arr[5]); // 运行时报 ArrayIndexOutOfBoundsException
</font>以上就是Java中Checked Exception与Unchecked Exception的区别的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号