Ich habe 2 Möglichkeiten:Singleton und öffentliche statische Variable Java
Singleton Pattern
class Singleton{ private static Singleton singleton = null; public static synchronized Singleton getInstance(){ if(singleton == null){ singleton = new Singleton(); } return singleton; } }
mit einem
static final
Feldprivate static final Singleton singleton = new Singleton(); public static Singleton getSingleton() { return singleton; }
Was ist der Unterschied? (singlethreaded oder Multithread)
Updates: Ich kenne Bill Pugh oder enum
Methode. Ich bin nicht auf der Suche nach dem richtigen Weg, aber ich habe nur 1 verwendet. Gibt es wirklich einen Unterschied s/w 1 oder 2?
Nach Ihrer aktualisierten Frage kein Unterschied. –
Diese Frage hat nichts mit Singleton zu tun. Sie fragen nach dem Zugriff auf ein statisches Feld aus dem synchronisierten/nicht synchronisierten Kontext. Tags bearbeiten – Juvanis
@BhavikAmbani Ich stimme nicht zu, da die erste Option jeden Thread sperren wird, der versucht, die Instanz zu bekommen, und daher etwas weniger performant ist. –