Рубрики
Без рубрики

Одноэлементный шаблон

Шаблон Singleton – это самый простой шаблон в java, который находится под шаблоном creational. какой-то ключевой момент… С тегами design, pattern, singleton, java.

Шаблон Singleton – это самый простой шаблон в java, который находится под шаблоном creational. некоторые ключевые моменты для использования в одноэлементном шаблоне.

  • Она статична по своей природе
  • частный конструктор
  • частный статический экземпляр класса
  • общедоступный статический метод получения
  • никаких параметров для конструктора

создать одноэлементный класс

public class Singleton {
    private static Singleton object = null;
    private Singleton() {
    }
    public static Singleton getInstance() {
        if (object == null) {
            object = new Singleton();
        }
        return object;
    }
    public void showMessage() {
        System.out.println("Singleton Pattern");
    }
}

создать демонстрационный класс

public class Demo {
    public static void main(String[] args) {
        Singleton object = Singleton.getInstance();
        object.showMessage();
    }
}

но эта классическая реализация не является потокобезопасной. поэтому, используя synchronized, убедитесь, что один поток может выполнить getInstance(); одновременно. Как это;

public class Singleton {
    private static Singleton object = null;
    private Singleton() {
    }
    public static synchronized Singleton getInstance() {
        if (object == null) {
            object = new Singleton();
        }
        return object;
    }
}

Оригинал: “https://dev.to/notitazone/singleton-pattern-2p23”