最佳答案
我已经注意到,Oracle JDK中的许多Java 8方法使用Objects.requireNonNull()
,如果给定的对象(参数)是null
,则会在内部抛出NullPointerException
。
public static <T> T requireNonNull(T obj) {
if (obj == null)
throw new NullPointerException();
return obj;
}
但是如果null
对象被解引用,无论如何都会抛出NullPointerException
。那么,为什么要做这个额外的空检查并抛出
NullPointerException
吗?< / p >
一个明显的答案(或好处)是它使代码更具可读性,我同意这一点。我很想知道使用的其他原因
Objects.requireNonNull()
在方法的开头