【发布时间】:2017-08-10 15:47:50
【问题描述】:
public controllerMethod() throws UnsupportedEncodingException {
getVehicles(req);
}
public List<vehicles> getVehicles(A req) throws UnsupportedEncodingException{
someObject.forEach(obj -> {
getVehicles2(req); //try catch resolves but why wouldn't throws handle this ?
}
}
public getVehicles2(A req) throws UnsupportedEncodingException{
}
我正在尝试从 getVehicles 调用 getVehicles2()。编译器抱怨这样做有一个未处理的异常。不使用 throws 声明异常不足以将其传播到父控制器方法。 Try/catch 会解决错误,但我认为声明 throws 会将相关错误传播到调用方法。
【问题讨论】:
-
对我来说看起来不错;编译器不应该抱怨。
-
@mrod 抱歉改变了问题。该调用在 forEach 循环中,这就是为什么它可能不适用于顶部的 throws
标签: java exception unhandled-exception throws