Programmazione di classi singleton in Java

1 aprile 2009 - Fonte: http://fripp.wordpress.com Lascia il tuo commento »
E' la tua prima volta qui? Allora iscriviti GRATIS ai nostri feeds! 

“Il Singleton è un design pattern che ha lo scopo di garantire che di una determinata classe venga creata una e una sola istanza, e di fornire un punto di accesso globale a tale istanza.” (fonte Wikipedia).

Qui riporto la soluzione al problema proposta da Bill Pugh.

La struttura della classe Singleton è molto semplice e sfrutta alcune peculiarità del linguaggio Java. Ecco il codice:


class Prova {
	protected Prova() {

	}

	private static class ProvaHolder {
		private final static Prova INSTANCE = new Prova();
	}

	public static Prova getInstance() {
		return ProvaHolder.INSTANCE;
	}
}

Il costruttore della classe è definito protected e questo impedisce che questo venga chiamato dall’esterno di tale classe. All’interno della classe Prova abbiamo definito una classe statica e privata, chiamata ProvaHolder, che al suo interno contiene il campo INSTANCE di tipo Prova; notiamo come INSTANCE sia dichiarato final static.

Quando il programmatore chiama il metodo statico getInstance la classe privata ProvaHolder viene “caricata” dalla JVM e viene allocato il suo campo statico INSTANCE...

Leggi il seguito »






SEGNALA / INVIA QUESTO POST:  Share
Hai trovato questo articolo interessante? Iscriviti GRATIS ai nostri feeds! 

Lascia un Commento