Isn't the default constructor initializing the instance member name = null?
No, constructors get called after all instance variables are initialized by the default values: 0 or the equivalent value for primitive numerical types, false for the boolean type, null for reference types.