繁体   English   中英

在Java中,为什么@Nullable具有运行时转储

[英]In Java, why does @Nullable have runtime rentention

正如标题所说,拥有@Nullable和@Nonull可以帮助你的ide或linter在编译时捕获bug,但为什么它有运行时保留?

可以想象,运行时保留将允许AOP代理检测传递给@Nonnull -annotated参数的空参数,并抛出异常或以其他方式处理它。 您可以争辩说,这是一种处理运行时空检查的更好方法,即在代码中使用显式空检查。

是的,这些注释对于静态编译检查非常有用,但是没有理由它们不能在运行时用于相同的目的。 它们作为注释的有效性延伸到运行时域,不像用于代码生成之类的注释。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM