How do you know the memory isn't deallocated?
What exactly do you mean by "NullObject loses its 'objectness'"?
Could you post the code for NullObject?