似乎不是将
null其视为a
NullPointerException,而是尝试
throw null自己
抛出的行为
NullPointerException。
换句话说,
throw检查其参数为非null,如果为null,则抛出
NullPointerException。
JLS 14.18
指定了以下行为:
如果对expression的求值正常完成,并产生一个null值,则将创建并抛出NullPointerException类的实例V’而不是null。然后,throw语句突然完成,原因是值为V’的throw。



