import org.eclipse.jdt.annotation.NonNull;
public class NullAnnotationTest {
public void meth1(@NonNull String in) {
System.out.println(in.length());
}
public static void main(String[] args) {
NullAnnotationTest test = new NullAnnotationTest();
test.meth1(null);
}
}
如果我们有@NonNull注释,我认为如果我们使用null参数调用meth1,我们将得到编译时错误。但我没有在上述程序中看到任何错误或警告。有人可以纠正我吗?
答案 0 :(得分:0)
默认情况下,此功能即 Method | Median | StdDev |
------------------------ |----------- |---------- |
GetSystemTimeAsFileTime | 14.9161 ns | 1.0890 ns |
UtcNow | 4.9967 ns | 0.2788 ns |
在eclipse中处于禁用状态。
请启用此功能。转到Enable annotation based null analysis
。启用
启用此设置后,您将收到Window=>Preferences => Java=> Compiler => Error/Warning
编译时错误。