From the JLS:
In the judgment of the designers of the Java programming language, [throwing a
NullPointerExceptionif the expression evaluates tonullat runtime] is a better outcome than silently skipping the entire switch statement or choosing to execute the statements (if any) after the default label (if any).