Singleton pattern Java

Смысл паттерна синглтон (Singleton pattern), заключается в следующем, он позволяет создать всего один объект своего типа. Паттерн Singleton гарантирует, что у класса есть только один экземпляр, и предоставляет к нему глобальную точку доступа.

Реализация данного паттерна для однопоточных приложений (Java):

public class Singleton {
    private static Singleton instance;

    public static Singleton getInstance() {
        if (instance == null)
            instance = new Singleton();

        return instance;
    }

    private Singleton() {
    }
}