Why Override Javas Equals Method This Way?