dimanche 18 mai 2008

A la recherche du singleton parfait

Le sujet qui passionne! Quelle est la version ultime, l'implémentation parfaite du pattern Singleton en Java?

Une page intéressante est disponible ici. Les différents protagonistes discutent des avantages & inconvénients des différents façons de l'implémenter.

Pour le coup, j'aime bien cette implémentation :
public final class Singleton {

private static final class SingletonHolder {
static final Singleton singleton = new Singleton();
}

private Singleton() {}

public static Singleton getInstance() {
return SingletonHolder.singleton;
}
}

Remarquez que jamais je n'avais vu le mot-clé static associé à une classe en Java! On en apprend tous les jours.

1 commentaire:

samo a dit…

http://en.wikipedia.org/wiki/Initialization_on_demand_holder_idiom