Junior — Middle
Wanneer vindt de creatie van de Singleton instantie plaats?
sobes.tech AI
Antwoord van AI
Het maken van een Singleton-voorbeeld gebeurt op het moment van de eerste toegang tot dat voorbeeld, als een lazy (lui) initialisatiemethode wordt gebruikt.
Dat betekent dat het object wordt gemaakt bij de eerste aanroep van de methode die de Singleton-voorbeeld retourneert, bijvoorbeeld getInstance(). Dit stelt je in staat om het maken van het object uit te stellen tot het echt nodig is, waardoor resources worden bespaard.
Voorbeeld van lazy initialisatie van Singleton in Android/Java:
public class Singleton {
private static Singleton instance;
private Singleton() {
// privé constructor
}
public static synchronized Singleton getInstance() {
if (instance == null) {
instance = new Singleton();
}
return instance;
}
}
Als in plaats daarvan eager initialisatie wordt gebruikt, wordt de instantie onmiddellijk gemaakt bij het laden van de klasse, vóór de eerste toegang.