Création de singletons avec Enum en Java : différences et considérations
En programmation orientée objet, les singletons sont des classes qui garantissent l'existence d'un seul exemple. Java permet la création de singletons à l'aide d'énumérations. Bien qu'il existe différentes approches pour y parvenir, deux variantes notables incluent :
Option 1 : méthode d'instance
<code class="java">public enum Elvis { INSTANCE; private int age; public int getAge() { return age; } }</code>
Cette approche crée une variable d'instance privée (âge) et expose une méthode getter (getAge) pour y accéder. L'accès singleton est obtenu via Elvis.INSTANCE.
Option 2 : méthode statique
<code class="java">public enum Elvis { INSTANCE; private int age; public static int getAge() { return INSTANCE.age; } }</code>
Dans cette variante, la variable age est toujours privée dans l'énumération, mais on y accède via une méthode statique (getAge). L'accès au singleton se fait via Elvis.getAge().
Différences et considérations
Méthode d'instance :
Méthode statique :
Considérations sur la liaison :
Optimalité :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!