Cha*_* Ma 4 java annotations static-analysis nullable
就像标题所说的那样,拥有@Nullable和@Nonull可以帮助您的ide或linter在编译时捕获错误,但是为什么它具有运行时保留功能呢?
可以想象,运行时保留将允许AOP代理检测传递给@Nonnull-annotated参数的空参数,并引发异常或以其他方式处理该异常。您可能会争辩说,这是在代码中使用显式null检查的一种更好的处理运行时null检查的方法。
是的,这些批注对于静态编译检查非常有用,但是没有理由不能在运行时出于相同目的使用它们。它们作为注释的有效性延伸到运行时域,这与用于代码生成之类的注释不同。
| 归档时间: |
|
| 查看次数: |
192 次 |
| 最近记录: |