Null-safety
我们在 infra.lang
包下提供了一些注解,能够帮助你声明 API 和字段的可为空性,可以在一定程度上减少 BUG :
-
@Nullable
: 在特定参数、返回值或字段可以为null
。 -
@NonNull
: 在特定参数、返回值或字段不能为null
(参数、返回值、以及分别适用@NonNullApi
和@NonNullFields
的字段)。 -
@NonNullApi
: 它是包级别的注解,默认情况下参数和返回值非空。 -
@NonNullFields
: 它是包级别的注解,默认字段非空。
框架代码本身利用了这些注解,但它们也可以用于任何基于该框架的 Java 项目,用于声明空安全 API 和可选的空安全字段。 尚不支持泛型类型参数、可变参数和数组元素的可为空声明。