Cosa è una classe singleton ed a cosa serve?
Ecco un esempio di come implementare un Singleton in Java:
public class Singleton { private static Singleton instance; private Singleton() {} public static Singleton getInstance() { if (instance == null) { instance = new Singleton(); } return instance; } public void helloWorld() { System.out.println("Hello World"); } } public class UseSingleton { public static void main(String[] args) { Singleton.getInstance().helloWorld(); } }
Il costruttore della classe Singleton è privato, il che significa che l’unico modo per accedere all’istanza della classe è tramite il metodo statico getInstance(). Se l’istanza non è ancora stata creata, viene creata una nuova istanza della classe e restituita. Se invece l’istanza esiste già, viene semplicemente restituita.
Il Singleton è utile in tutti quei casi in cui è necessario che venga utilizzata una sola istanza di una classe. Questo permette di avere un accesso controllato all’istanza, uno spazio di nomi ridotto e di evitare la dichiarazione di variabili globali. Inoltre, essendo impedita la creazione di nuove istanze, si assicura un basso numero di oggetti utilizzati in condivisione all’interno del programma.
Sono amante della tecnologia e delle tante sfumature del mondo IT, ho partecipato, sin dai primi anni di università ad importanti progetti in ambito Internet proseguendo, negli anni, allo startup, sviluppo e direzione di diverse aziende; Nei primi anni di carriera ho lavorato come consulente nel mondo dell’IT italiano, partecipando attivamente a progetti nazionali ed internazionali per realtà quali Ericsson, Telecom, Tin.it, Accenture, Tiscali, CNR. Dal 2010 mi occupo di startup mediante una delle mie società techintouch S.r.l che grazie alla collaborazione con la Digital Magics SpA, di cui sono Partner la Campania, mi occupo di supportare ed accelerare aziende del territorio .
Attualmente ricopro le cariche di :
– CTO MareGroup
– CTO Innoida
– Co-CEO in Techintouch s.r.l.
– Board member in StepFund GP SA
Manager ed imprenditore dal 2000 sono stato,
CEO e founder di Eclettica S.r.l. , Società specializzata in sviluppo software e System Integration
Partner per la Campania di Digital Magics S.p.A.
CTO e co-founder di Nexsoft S.p.A, società specializzata nella Consulenza di Servizi in ambito Informatico e sviluppo di soluzioni di System Integration, CTO della ITsys S.r.l. Società specializzata nella gestione di sistemi IT per la quale ho partecipato attivamente alla fase di startup.
Sognatore da sempre, curioso di novità ed alla ricerca di “nuovi mondi da esplorare“.
Comments