javax.annotation:@Nullable与@CheckForNull
两者有什么区别?两者似乎都意味着该值可以为null,因此应进行相应处理,即检查是否为null。
上面的两个注释是JSR-305 /
FindBugs的一部分:http :
//findbugs.sourceforge.net/manual/annotations.html
回答:
我认为从添加的链接中可以很清楚地看到:如果您使用@CheckForNull
并且使用该值的代码未检查null
,FindBugs会将其显示为错误。
FindBugs将忽略@Nullable
。
实际上,此注释仅在覆盖总体
NonNull
注释时有用。
@CheckForNull
在必须始终检查该值的情况下使用。@Nullable
在null
可能可以的地方使用。
编辑:目前似乎@CheckForNull
还没有很好的支持,所以我建议避免使用它@NonNull
另一个想法是直接与FindBugs开发人员联系,并询问他们对文档不一致的意见。
以上是 javax.annotation:@Nullable与@CheckForNull 的全部内容, 来源链接: utcz.com/qa/429941.html