Junior — Middle
141
Wie kann man die verzögerte Initialisierung von Objekten in Ihrem Code anwenden?
Unternehmen wurden gefragt
Antwort von AI
sobes.tech KI
Отложенная инициализация (lazy initialization) в Java применяется для создания объекта только в момент его первого использования, а не при загрузке класса или создании родительского объекта. Это позволяет экономить ресурсы и ускорять старт программы.
Пример реализации с использованием ленивой инициализации и паттерна Singleton:
public class LazySingleton {
private static LazySingleton instance;
private LazySingleton() {
// приватный конструктор
}
public static LazySingleton getInstance() {
if (instance == null) {
instance = new LazySingleton();
}
return instance;
}
}
Также в Java 8+ можно использовать класс java.util.function.Supplier или Optional для ленивой инициализации, либо использовать Lazy<T> из сторонних библиотек.
В многопоточной среде стоит применять синхронизацию или использовать volatile для корректной ленивой инициализации.