【发布时间】:2016-10-07 10:26:43
【问题描述】:
public class ExceptionTest {
public static void main(String[] args) {
ExceptionTest et = new ExceptionTest();
try {
et.testMethod();
} catch (Exception e) {
e.printStackTrace();
}
}
public int testMethod() {
try {
throw new Exception();
}finally {
return 4;
}
}
上面的代码工作正常,但是当我将testMethod()的返回类型更改为void并将return 4;行更改为System.out.println("some print msg");时会导致编译问题。
任何人都可以就编译错误的原因给出解决方案吗?
【问题讨论】:
-
问题似乎是为什么它不在您显然没有捕获异常或声明它被抛出时在第一种情况下给出错误。跨度>
-
在 Java8 中运行良好...
-
@Paul 我在 Java 8 中遇到了错误。
-
@Gendarme 刚刚注意到我的错误。我用
RuntimeError运行它。 -
在一次采访中了解到这个问题,
标签: java