gpt4 book ai didi

javax.annotation : @Nullable vs @CheckForNull

转载 作者:IT老高 更新时间:2023-10-28 20:44:21 25 4
gpt4 key购买 nike

两者有什么区别?两者似乎都意味着该值可能为空,应进行相应处理,即检查是否为空。

更新:上面的两个注释是 JSR-305/FindBugs 的一部分: http://findbugs.sourceforge.net/manual/annotations.html

最佳答案

我认为您添加的链接很清楚:如果您使用 @CheckForNull 并且使用该值的代码不检查 null,FindBugs 将显示这是一个错误。

FindBugs 将忽略 @Nullable

In practice this annotation is useful only for overriding an overarching NonNull annotation.

在必须始终检查值的情况下使用 @CheckForNull。使用 @Nullable 其中 null 可能没问题。

编辑:目前看来 @CheckForNull 没有得到很好的支持,所以我建议避免使用它并使用 @NonNull (另见 Which @NotNull Java annotation should I use? )。另一个想法是直接与 FindBugs 开发人员联系,并询问他们对文档中的不一致之处的意见。

关于javax.annotation : @Nullable vs @CheckForNull,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12301570/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com