Bra*_*ell 12 java lambda compiler-errors
我相当确定下面的代码是有效的Java 1.8代码:
import java.util.function.Consumer;
public class UnsolvableClass {
private Consumer<Object> func = (Object theErrorVariable) -> {};
public UnsolvableClass() {
return;
}
}
Run Code Online (Sandbox Code Playgroud)
现在,您可能会想:"为什么在构造函数中有返回?" 好吧,那是因为它是我提出的最小的示例代码,产生了这个错误.
请注意,在构造函数中使用return语句是完全合法的.
编译时,javac会抛出此错误.
UnsolvableClass.java:10: error: variable theErrorVariable might not have been initialized
return;
^
1 error
Run Code Online (Sandbox Code Playgroud)
我喜欢当错误与..."theErrorVariable"变量未被初始化时它认为错误发生在"返回"行上的情况.
如果我删除"返回"行,一切都编译好.此外,如果我删除lambda语句,它也编译好.
注意:我尝试使用Eclipse的java编译器进行编译,并且编译成功.
听起来像javac的lambda支持中一个非常模糊的错误.我错过了什么吗?
如果我不是,这是一个真正的错误,我会在哪里向Oracle报告?
| 归档时间: |
|
| 查看次数: |
151 次 |
| 最近记录: |