Шаблон проектирования - шаблон Singleton
Шаблон Singleton - один из простейших шаблонов проектирования в Java. Этот тип шаблона проектирования относится к шаблону создания, поскольку этот шаблон предоставляет один из лучших способов создания объекта.
Этот шаблон включает в себя один класс, который отвечает за создание объекта, обеспечивая при этом создание только одного объекта. Этот класс предоставляет способ доступа к своему единственному объекту, к которому можно получить доступ напрямую, без необходимости создавать экземпляр объекта класса.
Реализация
Мы собираемся создать класс SingleObject . Класс SingleObject имеет свой конструктор как частный и статический экземпляр самого себя.
Класс SingleObject предоставляет статический метод для передачи своего статического экземпляра во внешний мир. SingletonPatternDemo , наш демонстрационный класс будет использовать класс SingleObject для получения объекта SingleObject .
Шаг 1
Создайте одноэлементный класс.
SingleObject.java
public class SingleObject {
//create an object of SingleObject
private static SingleObject instance = new SingleObject();
//make the constructor private so that this class cannot be
//instantiated
private SingleObject(){}
//Get the only object available
public static SingleObject getInstance(){
return instance;
}
public void showMessage(){
System.out.println("Hello World!");
}
}
Шаг 2
Получить единственный объект из класса singleton.
SingletonPatternDemo.java
public class SingletonPatternDemo {
public static void main(String[] args) {
//illegal construct
//Compile Time Error: The constructor SingleObject() is not visible
//SingleObject object = new SingleObject();
//Get the only object available
SingleObject object = SingleObject.getInstance();
//show the message
object.showMessage();
}
}
Шаг 3
Проверьте вывод.
Hello World!