Junior — Middle
Jak implementovat vzor Singleton v jazyce Java?
sobes.tech AI
Odpověď od AI
Vzor Singleton zaručuje, že třída má pouze jednu instanci a poskytuje k ní globální přístup.
V jazyce Java lze tento vzor implementovat několika způsoby. Jednou z jednoduchých a vlákny bezpečných možností je použití líné inicializace s klíčovým slovem synchronized nebo použití statické vnitřní třídy.
Příklad s použitím statické vnitřní třídy:
public class Singleton {
private Singleton() {
// soukromý konstruktor
}
private static class Holder {
private static final Singleton INSTANCE = new Singleton();
}
public static Singleton getInstance() {
return Holder.INSTANCE;
}
}
Tento přístup zaručuje, že instance je vytvořena pouze při prvním volání getInstance(), a je vlákny bezpečný bez použití synchronized.