NullPointerException 运行时异常, 那么我们为什么要多此一举进行这样的一次检查呢?...看了他们的回答, 总结为以下几点:
首先, 从这个方法的名称可以看出, 这个方法使用的场景是, 我们使用一个对象的方法时, 正常的运行状态应该能保证这个对象的引用非空, 如果这个对象为空了, 那一定是其他某个地方出错了..., 所以我们应该抛出一个异常, 我们不应该在这里处理这个非空异常....这也是 requireNonNull 这个方法的设计思想, 让错误尽早出现. 使用这个方法, 我们明确的抛出异常, 发生错误时, 我们立刻抛出异常....我们使用这个引用的时候, 应当保证非空, 如果不然, 会抛出异常告诉我们其他地方出错了, 这里出现了空指针异常
参考链接:https://www.jianshu.com/p/e8d33f57373c