Android中Object.requireNonNull和@NonNull

906 阅读1分钟

Android中Object.requireNonNull和@NonNull

Android中的Object.requireNonNull和@NonNull并不能解决报错的问题,相反,是为了更快速的抛出问题、定位问题。

问题1: 不加上Object.requireNonNull也会抛出异常,为什么要加上呢?

答:这是因为Fail-fast思想, 翻译过来就是, 让错误尽可能早的出现,让开发者可以迅速的定位错误,而不是嵌套的很深发生错误再去排查。

问题2: @NonNull 的作用是什么?

答: @NonNull 作用是为了让编译器给出提示,也不能真正的避免nullPointerException。 比如声明了变量后,如果传入了null,编译器会提示Passing 'null' argument to parameter annotated as @NotNull