Junior — Middle
Kad notiek Singleton šablona instances izveide?
sobes.tech AI
Atbilde no AI
Singleton modeļa izveide notiek pirmās piekļuves brīdī uz šo modeļa instanci, ja tiek izmantota slinka (lazy) inicializācija.
Tas nozīmē, ka objekts tiek izveidots pirmās izsaukšanas laikā metodes, kas atgriež Singleton, piemēram, getInstance(). Tas ļauj atlikt objekta izveidi līdz nepieciešamajam brīdim, taupot resursus.
Lazy inicializācijas piemērs Android/Java:
public class Singleton {
private static Singleton instance;
private Singleton() {
// privāts konstruktors
}
public static synchronized Singleton getInstance() {
if (instance == null) {
instance = new Singleton();
}
return instance;
}
}
Ja tiek izmantota ielādes laikā inicializācija (eager initialization), tad instances tiek izveidots nekavējoties ielādējot klasi, pirms pirmās piekļuves.