首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在Java中使用@Nullable

在Java中使用@Nullable
EN

Stack Overflow用户
提问于 2014-04-10 20:34:58
回答 2查看 19.6K关注 0票数 16

我有一个关于Java中@Nullable注解用法的问题。

据我所知,在可能返回空值的方法上设置是一个很好的实践。这样,集成开发环境可以帮助检测一些空指针异常错误,或者建议在使用@NotNull的情况下删除不必要的空指针异常检查。

到目前为止一切顺利,但是如何使用@Nullable作为方法参数呢?这是不是一种好的做法,或者代码会变得更加冗长(如果与final一起使用),并且好处可能会丢失,因为您并不总是知道将哪些参数传递给函数调用?另外,您对将@Nullable与setter方法一起使用有什么看法?

这个用法与在公司工作时的情况有关,而不是与小项目(如家庭作业)有关。

EN

回答 2

Stack Overflow用户

发布于 2014-04-10 20:40:00

对于自己的小项目来说,你不需要使用这个。但在为他人创建库时,这可能有助于您的API用户编写健壮的应用程序。国际海事组织

正如我在评论中所写的:查看nullable annotation usage可以很好地回答这个特定的问题。

票数 7
EN

Stack Overflow用户

发布于 2014-04-10 20:57:45

@Nullable的用法是让用户和编译器知道允许空值作为该参数是可以接受的。

我相信这是一种更直接的方式,让查看您的API的用户知道传递null不会创建NPE或未定义的行为。

对于setter,如果要在很多地方使用该字段,最好查看它的setter,并发现处理了null。

也就是说,我认为它应该只用于API或库,在你自己的代码中使用它们会产生太多无用的代码。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22988243

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档