首页 > 编程知识 正文

notnull注解使用,can not be null

时间:2023-05-04 23:58:20 阅读:58960 作者:237

阅读spring源代码时,使用了两个注释: @NotNull和@Nullable。 让我们做一个简单的分析

参考文档:

避免Java APP应用程序中的NullPointerException的技术和最佳做法

安卓的@Nullable和NotNull注释

可以定义编写程序时是否可以为空指针。 使用annotation (如@NotNull或@Nullable )声明方法是否使用空指针安全。 现代编译器、IDE或工具可以阅读此annotation,以添加忘记的空指针检查或呈现不必要的混乱空指针检查。 IntelliJ和findbugs已经支持这些注释。 这些annotation也是JSR 305的一部分,但即使不在IDE或工具中,该annotation本身也可以用作文档。 通过查看@NotNull和@Nullable,程序员可以决定是否要进行空指针检查。 顺便说一下,这个技巧对Java程序员来说是比较新的,要采用需要时间。

用法

如果可以传递空值,则标记为@Nullable;如果不能,则标记为@Nonnull。 在中,在对不安全的严格操作进行编码操作时,这些注释会提供警告。 以下是查看spring源代码,发现使用了@Nullable,然后用此源代码进行测试的结果。

publicfilesystemxmlapplicationcontext (字符串[ ] config locations、boolean refresh、@ nullableapplicationcontextparent ) thrhed if(refresh ) ) { this.refresh; }我们将@Nullable更改为@Nonnull,并发现在调用此方法的位置发出警告:

publicfilesystemxmlapplicationcontext (字符串.配置位置) throwsbeansexception (//herewarningthis )配置

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。