在Java中,要在catch块中重新抛出异常,可以使用throw
关键字,并提供要抛出的异常对象
public class Example { public static void main(String[] args) { try { // 这里可能会抛出一个异常 int result = riskyOperation(); } catch (Exception e) { System.err.println("发生异常: " + e.getMessage()); // 重新抛出异常 throw e; } } private static int riskyOperation() throws Exception { // 这里只是一个示例,实际上可能会执行一些有风险的操作 if (Math.random() < 0.5) { return 42; } else { throw new Exception("随机异常"); } } }
在这个示例中,我们首先尝试调用riskyOperation()
方法。如果该方法抛出异常,我们将在catch块中捕获它。然后,我们打印一条错误消息,并使用throw
关键字重新抛出相同的异常。这将导致调用者处理这个异常,或者继续向上传递,直到找到合适的异常处理程序。