In java, only class member variables are initialized by null by default.
It means, even if you define any variable without initializing it, it gets initialized by null if it is member variable.
If the variable is defined in method then it is not initialized by java by default because it is local variable.
And if you try to access this variable without assigning any value, java gives compile time error because you should assign some value to the variable before using it.
That's the reason that you need to assign null value to the variable so that it will be initialized but not pointing to any valid memory.
With this, your both criteria gets satisfy and you can proceed.