Si vous regardez dans l'api enum la méthode, name()
il est dit que:
Renvoie le nom de cette constante d'énumération, exactement comme déclaré dans sa déclaration d'énumération. La plupart des programmeurs devraient utiliser la méthode toString de préférence à celle-ci, car la méthode toString peut renvoyer un nom plus convivial. Cette méthode est conçue principalement pour une utilisation dans des situations spécialisées où l'exactitude dépend de l'obtention du nom exact, qui ne variera pas d'une version à l'autre.
Pourquoi est-il préférable d'utiliser toString()
? Je veux dire que toString peut être remplacé lorsque name () est déjà final. Donc, si vous utilisez toString et que quelqu'un le remplace pour renvoyer une valeur codée en dur, toute votre application est en panne ... De plus, si vous regardez dans les sources, la méthode toString () renvoie exactement et juste le nom. C'est la même chose.
toString()
votre énumération, mais personne d'autre ne peut l'étendre et la remplacer. Vous ne pouvez pas étendre les énumérations.