返回值并引发异常?
2022-09-01 14:02:43
我正在使用一个API,该API声称如果成功则返回true,如果失败则返回false。但是,如果失败,它也声称会引发不同的异常。它如何返回 false 并引发异常?
我正在使用一个API,该API声称如果成功则返回true,如果失败则返回false。但是,如果失败,它也声称会引发不同的异常。它如何返回 false 并引发异常?
不可能同时引发异常并从单个函数调用返回值。
也许它会执行类似在出现错误时返回之类的操作,但如果输入无效,则会引发异常。false
编辑:PaulPRO发布了一个(现已删除的)答案,指出从技术上讲,可能导致异常在不同的线程中引发,同时在当前线程中返回值。我认为这是值得注意的,即使它不是你应该看到的。
您可以引发具有(在本例中为布尔值)值的异常:
public class ValueException extends Exception {
final boolean value;
public ValueException(boolean value, String message) {
super(message);
this.value = value;
}
public boolean getValue() {
return value;
}
}