java – IntelliJ IDEA抱怨@NotNull参数的空检查

前端之家收集整理的这篇文章主要介绍了java – IntelliJ IDEA抱怨@NotNull参数的空检查前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想在我的项目中使用Jetbrains @ Nullable / @NotNull Annotations.

我有一个带有@NotNull字段的类.构造函数自然不接受null,而是抛出异常.当然,这个构造函数的参数也可以用@NotNull注释.

为什么IntelliJ IDEA会抱怨空检?文件说明:

An element annotated with NotNull claims null value is forbidden to return (for methods),pass to (parameters) and hold (local variables and fields).

但是我仍然必须在运行时检查空值,以防构建系统不理解Annotation并接受像new Car(null)这样的语句.我错了吗?

解决方法

如果使用JetBrains @NotNull注释,运行时断言将被添加到已编译的字节码中,以保证null不会在那里传递.那么在源代码中编写相同的检查是没有意义的.这种方法对我们很有效.

如果您使用其他注释或者只是不想检测字节码,可以通过按Alt Enter键,“编辑检查设置”并选中“忽略断言语句”来禁用此特定警告.这些条件语句被IDE视为断言.

猜你在找的IDEA相关文章