龙目岛@NonNull或爪哇@Nonnull



Lombok的@NonNull VS javax.annotation.NonNull

哪一个更适合用于方法参数以及何时使用?

这里的答案模糊地比较了所有的注释,但没有推断出哪一个是最好的。我只是想知道两者中更好的一个。

javax.annotation.Nonnull是JSR-305的一部分,它似乎已经死了。即使不是这样,所说的注释也只能用于静态代码分析目的,例如,您的IDE警告您,您正在将null值传递到不可接受的地方。

lombok.NonNull是一个非常不同的故事。首先,所述注释不是用于验证目的,而是用于静态代码分析目的。Lombok使用此注释在实例变量或参数为空时激发NPE,而不应该这样做。

作为一个注释后处理程序,Lombok将在预编译过程中有效地获取这个注释,并自动生成所需的代码来有效地处理这些情况(通过操纵AST)。

你可以在这里阅读更多关于这个:龙目-非Null。

您似乎对javax.annotation相关功能和龙目的功能都不是最熟悉的,所以我建议您好好阅读一下什么是什么。

相关内容

  • 没有找到相关文章

最新更新