Moved checking for null and default initialization to last constructor