What is the use case that needs this.  I don't like allowing construction of objects that can't be used until they are further initialized.  If this must be allowed, it should be declared protected so that it can only be used by subclasses