在编程中,try-catch
和 finally
块通常用于处理异常和资源管理
catch
块。try
块中抛出的特定异常。你可以为不同类型的异常提供多个 catch
块。当 try
块中的异常被抛出时,相应的 catch
块将被执行。try
块是否成功完成,或者是否有匹配的 catch
块,finally
块都将被执行。下面是一个示例,展示了如何组合使用 try-catch
和 finally
块:
public class TryCatchFinallyExample {
public static void main(String[] args) {
FileInputStream fis = null;
try {
fis = new FileInputStream("example.txt");
// 在这里处理文件内容
} catch (FileNotFoundException e) {
System.out.println("文件未找到异常: " + e.getMessage());
} catch (IOException e) {
System.out.println("I/O 异常: " + e.getMessage());
} finally {
if (fis != null) {
try {
fis.close();
} catch (IOException e) {
System.out.println("关闭文件时发生异常: " + e.getMessage());
}
}
}
}
}
在这个示例中,我们尝试打开一个名为 “example.txt” 的文件。如果文件不存在或无法读取,try
块中的代码将抛出异常。相应的 catch
块将捕获并处理这些异常。无论是否发生异常,finally
块都将执行,尝试关闭文件输入流。