为了账号安全,请及时绑定邮箱和手机立即绑定

我应该使用哪个@NotNull Java注释?

我应该使用哪个@NotNull Java注释?

幕布斯7119047 2019-06-20 16:03:58
我应该使用哪个@NotNull Java注释?我希望提高代码的可读性,并使用IDE代码检查和/或静态代码分析(FindBugs和Sonar)等工具来避免NullPointerExceptions。许多工具似乎互不相容@NotNull/@NonNull/@Nonnull在我的代码中注释和列出所有这些都是很糟糕的。对哪一个是“最好的”有什么建议吗?下面是我找到的等效注释列表:javax.validation.constraints.NotNull创建用于运行时验证,而不是静态分析。文献资料edu.umd.cs.findbugs.annotations.NonNull被发现虫静态分析与声纳(现在)索纳库贝)文献资料javax.annotation.Nonnull这可能也适用于Findbug,但是JSR-305是不活跃的。(另见:JSR 305的状况如何?) 来源org.jetbrains.annotations.NotNull用于静态分析的IntelliJIDEA。文献资料lombok.NonNull用于控制Lombok项目.占位符注释,因为没有标准。来源, 文献资料android.support.annotation.NonNull标记注释,可在android中使用,由支持注释包提供。文献资料org.eclipse.jdt.annotation.NonNullEclipse用于静态代码分析文献资料
查看完整描述

3 回答

?
米琪卡哇伊

TA贡献1998条经验 获得超6个赞

我使用IntelliJOne,因为我主要关注IntelliJ标记可能产生NPE的东西。我同意在JDK中没有标准注释是令人沮丧的。有人说要把它添加到Java 7中。在这种情况下,还会有更多的选择!


查看完整回答
反对 回复 2019-06-20
  • 3 回答
  • 0 关注
  • 3069 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信