When reading JDK source code, I find it common that the author will check the parameters if they are null and then throw new NullPointerException() manually.
Why do they do
It is so you will get the exception as soon as you perpetrate the error, rather than later on when you're using the map and won't understand why it happened.