A pointer points to a region of memory which usually contains data, but it can also point to NULL, which means it is not pointing to data.

If you dereference a pointer to get the data that it points to, and it points to NULL, then you get a NullPointerException (because obviously there is no data there to be had). This often causes a crash, in userspace a SIGSEGV or in kernel space, a KernelPanic.