Java异常处理通过try-catch-finally和throws机制保障程序健壮性,区分检查异常(如IOException)与非检查异常(如NullPointerException),支持try-with-resources自动管理资源,提升代码稳定性与可维护性。
Java中的异常处理是程序健壮性的重要保障。当程序运行过程中出现错误或意外情况时,Java通过异常机制来通知开发者并提供恢复或退出的途径。掌握异常的捕获与处理方法,能有效避免程序崩溃,提升用户体验。
Java中的异常分为两大类:检查异常(checked exceptions)和非检查异常(unchecked e
xceptions)。
最基本的异常处理结构是try-catch-finally语句块。将可能出错的代码放入try块中,用catch捕获特定异常,并在finally中执行清理操作。
示例:
try {
int result = 10 / 0;
} catch (ArithmeticException e) {
System.out.println("发生算术异常:" + e.getMessage());
} finally {
System.out.println("无论是否异常都会执行");
}
如果当前方法不打算处理异常,可以用throws关键字将异常向上抛出,由调用者处理。
例如:
public void readFile(String filename) throws IOException {
FileReader file = new FileReader(filename);
// 其他操作
}
从Java 7开始,支持try-with-resources语法,适用于实现了AutoCloseable接口的资源,如输入输出流。
示例:
try (FileReader fr = new FileReader("data.txt");
BufferedReader br = new BufferedReader(fr)) {
String line = br.readLine();
System.out.println(line);
} catch (IOException e) {
System.err.println("读取文件失败:" + e.getMessage());
}
基本上就这些。合理使用异常处理机制,能让程序更稳定、易维护。注意不要滥用catch忽略异常,应根据业务场景决定是恢复、提示还是终止流程。