Junior — Middle
Kako implementirati lenju inicijalizaciju Singleton obrasca?
sobes.tech АИ
Одговор од АИ
Lagana inicijalizacija Singleton u Javi omogućava kreiranje instance klase samo pri prvom pristupu, čime se štede resursi. Jedan od najčešće korišćenih načina je korišćenje unutrašnje statičke klase:
public class Singleton {
private Singleton() {
// privatni konstruktor
}
private static class Holder {
private static final Singleton INSTANCE = new Singleton();
}
public static Singleton getInstance() {
return Holder.INSTANCE;
}
}
Ovde se klasa Holder učitava i inicijalizuje samo pri prvom pozivu getInstance(), što obezbeđuje sigurnost u višedretvenim okruženjima i lenju inicijalizaciju bez sinhronizacije.