Java 中的已检查异常列表

10 Sept 2024 | 4 分钟阅读

异常处理是编程的一个基本方面,它使开发人员能够优雅地管理和从不可预见的错误中恢复。在 Java 中,异常分为检查异常和非检查异常,其中检查异常要求在代码中进行显式处理。本文重点介绍 Java 中的检查异常,提供典型遇到的异常的综合列表以及展示其用法的模式程序。

1. FileNotFoundException

当尝试访问不存在或无法打开的文件时,会抛出 FileNotFoundException。它属于 java.io 包。请考虑以下程序。

输出

File not found: nonexistent_file.txt (No such file or directory)

2. IOException

IOException 类是一个众所周知的异常,表示在执行输入/输出操作时发生了错误。它属于 java.io 包。以下程序演示了如何处理 IOException。

输出

An error occurred: nonexistent_file.txt (No such file or directory)

3. ClassNotFoundException

当尝试使用 Class.forName() 方法动态加载类时,但找不到指定的类,则会抛出 ClassNotFoundException。这是另一个示例。

ClassNotFoundExceptionExample.javas

输出

Class not found: com.example.NonExistentClass

4. SQLException

在处理数据库时发生错误时,会抛出 SQLException。它属于 java.sql 包。下面的代码片段说明了一个涉及数据库连接的基本场景。

SQLExceptionExample.java

输出

SQL error occurred: Communications link failure

5. ParseException

在将字符串解析为特定格式(包括日期或数字)时发生错误时,会抛出 ParseException。它属于 java.text 包。请考虑以下示例。

ParseExceptionExample.java

输出

Invalid date format: Unparseable date: "2023-13-45"

6. InterruptedException

当线程在睡眠或等待状态下被中断时,会抛出 InterruptedException。它通常用于处理涉及线程同步和并发的场景。这是一个例子。

InterruptedExceptionExample.java

输出

(如果程序正常运行,则不输出。如果中断,程序将显示:“Thread interrupted: java.lang.InterruptedException: sleep interrupted”)

7. MalformedURLException

遇到无效或格式错误的 URL 时,会抛出 MalformedURLException。它属于 java.net 包。请考虑以下程序。

InterruptedExceptionExample.java

输出

Malformed URL: no protocol: htp://example.com

8. ClassNotFoundException

当尝试使用 Class.forName() 方法动态加载类时,但找不到指定的类,则会抛出 ClassNotFoundException。这是另一个示例:c

InterruptedExceptionExample.java

输出

Class not found: com.example.NonExistentClass

请记住,这些只是 Java 中检查异常的几个示例。Java 提供了广泛的检查异常,涵盖了各种错误场景。在代码中正确理解和处理这些异常将有助于构建健壮可靠的应用程序。

总而言之,理解 Java 中的检查异常对于构建健壮可靠的应用程序至关重要。通过了解最常见的检查异常以及如何处理它们,开发人员可以编写出能够优雅地从错误中恢复并向用户提供有意义反馈的代码。本文提供的示例程序提供了处理检查异常的实用见解,帮助您开发更具弹性的 Java 应用程序。