在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块中手动关闭资源。