Singleton en Java
Monday, August 18th, 2008[Este artículo es una traducción de Singleton in Java - the proper way.]
Existen dos formas comunes de implementar una clase singleton en Java, que son: utilizar una instancia “public static final” o bien utilizar el método de “static factory” (podéis ver ejemplos en la wikipedia).
Sin embargo, existe un tercer método. Probablemente, este es el mejor, si se usa una versión de Java superior a la 1.5.
Se puede utilizar un “enum” . De esta manera, se obtinene la funcionalidad del Singleton de una manera muy sencilla, además de que no se necesita implementar la serialización, ya viene “de fábrica”:
package electro;
public enum YourSingleton {
INSTANCE;
public void doStuff(String stuff) {
System.out.println("Doing " + stuff);
}
}
Así, podemos utilizarla completamente seguros de que es singleton:
YourSingleton.INSTANCE.doStuff("some stuff");