gpt4 book ai didi

java - 从变量引发异常

转载 作者:行者123 更新时间:2023-11-30 02:01:30 24 4
gpt4 key购买 nike

使用java,我想做类似的事情

try {
someMethod();
} catch (Throwable x) {
x.setMessage("Some comment " + x.getMessage());
throw x;
}

也就是说,我不知道“someMethod”会抛出什么。不管是什么,我想在其消息的开头添加一条消息,然后抛出错误。但 Throwable 没有 setMessage() 方法。

我可以做一个Class<? extends Throwable> cls = x.getClass();获取类类型,但我不确定语法。我做不到一个throw new cls("Comment " + x.getMessage());我确信当您不知道抛出的可抛出对象的类时,一定有一种相当简单的方法来做到这一点。

最佳答案

您可以创建一个自定义的 RuntimeException 并将捕获的异常包装在其中,而不是捕获 Throwable (这几乎总是是一个错误) .

public class MyException extends RuntimeException {
public MyException(String message, Throwable cause) {
super(message, cause);
}
}

try {
someMethod();
} catch(Exception e) {
throw new MyException("A major error has occurred!", e);
}

关于java - 从变量引发异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52709100/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com