SINGLETON DESIGN PATTERN

Il Singleton Pattern è uno dei pattern di progettazione più semplici in Java. Questo tipo di design pattern rientra nei pattern creazionali in quanto fornisce uno dei modi migliori per creare un oggetto.

Singleton

Questo pattern coinvolge una singola classe che è responsabile della creazione dell’ oggetto, assicurandosi che venga creata una ed una sola istanza. Questa classe fornisce un modo per accedere al suo unico oggetto a cui è possibile accedere direttamente senza che sia necessario creare un’istanza dell’oggetto della classe.

DIAGRAMMA UML SINGLETON

Singleton UML

 

IMPLEMENTAZIONE

Step 1: Creazione classe Singleton

public class Singleton {   //Crea un oggetto Singleton
    private static Singleton instance = new Singleton();

    // Rendiamo il costruttore privato, in questo modo
    // la classe non può essere instanziata
    private Singleton(){}

    // Ritorna l'unico oggetto creato
    public static Singleton getInstance(){
        stampa();
        return instance;
    }

    private static void stampa(){
        System.out.println("[SINGLETON]: OK!");
    }
}

 

Step 2: Main per recuperare l’unico oggetto

public class Main {
    public static void main(String[] args) {
        //Errore di compilazione: Costruttore non visibile
        //Singleton singleton = new Singleton();

        //Metodo corretto
        Singleton singleton = Singleton.getInstance();
    }
}

 

LINK UTILI