Я отметил, что многие методы Java 8 в Oracle JDK используют Objects.requireNonNull(), который внутренне Objects.requireNonNull() NullPointerException если заданный объект (аргумент) равен null.
public static <T> T requireNonNull(T obj) {
if (obj == null)
throw new NullPointerException();
return obj;
}
Но NullPointerException будет выброшено в любом случае, если null объект разыменован. Итак, зачем делать эту дополнительную проверку на нуль и выбрасывать NullPointerException?
Один очевидный ответ (или преимущество) заключается в том, что он делает код более читабельным, и я согласен. Я хотел бы знать любые другие причины для использования Objects.requireNonNull() в начале метода.