Java 中的异常分为可检查异常和不可检查异常,前者编译时必须处理,后者可运行时处理或忽略。处理可检查异常时,使用 try...catch 块或在方法签名中声明,如 IOException、SQLException。对于不可检查异常,如 NullPointerException,可选择处理或忽略。正确处理异常的最佳实践包括使用 try...catch 块处理可检查异常,谨慎使用不可检查异常,编写健壮的代码防止其触发。实战中,使用 try...finally 块正确管理资源,以确保关闭资源。
如何在 Java 中正确处理可检查异常和不可检查异常
Java 中的异常分为两类:可检查异常和不可检查异常。可检查异常在编译时必须显式处理,而不可检查异常则可以在运行时处理或忽略。
可检查异常
Exception
类(但不是 RuntimeException
)try...catch
块或在方法签名中声明来处理IOException
、SQLException
、ClassNotFoundException
不可检查异常
RuntimeException
类NullPointerException
、IndexOutOfBoundsException
、ArithmeticException
正确处理异常的最佳实践
可检查异常:
try...catch
块来处理可检查异常。finally
块释放资源,即使发生异常。不可检查异常:
try...catch
块或 catch (Exception e)
来处理所有不可检查异常。实战案例:资源管理
以下代码示例演示了如何使用 try...finally
块正确管理资源:
// 需关闭的资源 BufferedReader reader = null; try { // 打开资源 reader = new BufferedReader(new FileReader("file.txt")); // 使用资源进行操作 } catch (IOException e) { // 处理 IOException 可检查异常 } finally { // 无论如何,都确保关闭资源 if (reader != null) { reader.close(); } }