【发布时间】:2020-01-18 17:36:09
【问题描述】:
任何未声明为 void 的方法都必须包含带有相应返回值的 return 语句,如下所示:
return returnValue;
不过,确实如此。可以在没有 return 语句的情况下创建非 void return 方法。
public class MyClass {
public String myMethod() {
while (true) {
}
}
public static void main(String[] args) {
System.out.println("hello world");
}
}
问题:很明显,编译器推断出无法摆脱无限循环(和返回值),但是无论如何不应该强制执行语言规则吗?
【问题讨论】:
-
我必须把它放到 IDE 中,我很确定这是编译器错误...
-
JLS 怎么说?这就是规范。 Java 教程不是。这只是一个教程,需要一些捷径。
-
有趣,没有编译错误。
-
啊,我喜欢学习新事物。谢谢 OP,请按照 YCF 的链接获取答案。
标签: java