Junior — Middle
Kedy sa vytvára inštancia Singleton?
sobes.tech AI
Odpoveď od AI
Vytvorenie inštancie vzoru Singleton nastáva v momente prvého prístupu k tejto inštancii, ak sa používa lenivá (lazy) inicializácia.
To znamená, že objekt je vytvorený pri prvom volaní metódy, ktorá vracia inštanciu Singleton, napríklad getInstance(). Toto umožňuje odložiť vytvorenie objektu do okamihu, keď je naozaj potrebný, čím sa šetria zdroje.
Príklad lazy inicializácie Singleton v Android/Java:
public class Singleton {
private static Singleton instance;
private Singleton() {
// súkromný konštruktor
}
public static synchronized Singleton getInstance() {
if (instance == null) {
instance = new Singleton();
}
return instance;
}
}
Ak sa však používa inicializácia pri načítaní triedy (eager initialization), potom je inštancia vytvorená ihneď pri načítaní triedy, pred prvým prístupom.