在Java中,try关键字用于启动异常处理机制,通常与catch和finally关键字一起使用。try块用于封装可能会抛出异常的代码块,如果try块中的代码抛出了异常,程序会跳转到与异常匹配的catch块进行异常处理。finally块用于执行无论是否发生异常都需要执行的代码。
try-catch-finally的基本结构如下所示:
try {
// 可能会抛出异常的代码块
} catch (Exception e) {
// 异常处理逻辑
} finally {
// 无论是否发生异常都需要执行的代码块
}
try块中的代码块可能会抛出不同类型的异常,catch块可以捕获不同类型的异常并进行相应的处理。finally块中的代码总是会被执行,无论是否发生异常。通常用于释放资源、关闭文件等操作。
在Java 7中引入了try-with-resources语句,用于自动关闭实现了java.lang.AutoCloseable接口的资源。例子如下:
try (BufferedReader br = new BufferedReader(new FileReader("file.txt"))) {
String line = br.readLine();
System.out.println(line);
} catch (IOException e) {
e.printStackTrace();
}
在这个例子中,try-with-resources语句会在try块结束后自动关闭BufferedReader对象,无需在finally块中手动关闭资源。