Junior — Middle
Kako osigurati da se instanca objekta kreira samo jednom tokom izvršavanja programa?
sobes.tech АИ
Одговор од АИ
Чтобы гарантировать, что экземпляр объекта создается только один раз во время выполнения программы, можно использовать паттерн Singleton.
Основные способы проверки:
- Реализация Singleton: класс контролирует создание своего экземпляра, предоставляя статический метод для доступа к нему.
- Тестирование: можно написать тест, который вызывает создание объекта несколько раз и проверяет, что все ссылки указывают на один и тот же объект.
Пример на Java:
public class Singleton {
private static Singleton instance;
private Singleton() { }
public static synchronized Singleton getInstance() {
if (instance == null) {
instance = new Singleton();
}
return instance;
}
}
В тесте можно проверить:
Singleton s1 = Singleton.getInstance();
Singleton s2 = Singleton.getInstance();
assert s1 == s2; // Проверка, что ссылки указывают на один объект
Таким образом, убеждаются, что объект создается единожды.