@NonNull,用于注解方法,参数以及变量,指示目标对象不能为null;
@NonNullApi,包(Package)级别注解,指定参数和方法返回值默认不能为null;
@NonNullFields,包(Package)级别注解,用于变量不能为null;
@Nullable,可用于注解方法,参数以及变量,指定目标对象可以weinull,若是与@NonNullApi和@NonNullFields共用时,则会覆盖;
示例,Spring框架中Spring core其中一个源码及其Java项目中的的作用
/**
* Provides basic classes for exception handling and version detection,
* and other core helpers that are not specific to any part of the framework.
*/
@NonNullApi //指示该包下,参数,方法返回值不能为null
@NonNullFields // 指示该包下,变量不能为null
package ;
import ;
import ;