Die Codekopie lautet wie folgt:
Paket net.kitbox.util;
/**
*
* @Author lldy
*
*/
öffentliche Klasse Singleton {
private Singleton () {
}
private statische Klasse Singletonholder {
private statische Singleton -Instanz = new Singleton ();
}
public static void methode () {
Singletonholder.instance._method ();
}
private void _method () {
System.out.println ("Singleton -Methode!");
}
public static void main (String [] args) {
Singleton.Method ();
}
}
Dieses Schreiben nutzt das Ladungsprinzip des Klassenladers, jede Klasse wird nur einmal geladen, so dass ein Singleton-Objekt erzeugt wird, wenn seine interne statische Klasse geladen wird und dieser Prozess thread-sicher ist.
Die Methode () -Methode verkauft die private Methode des internen Singleton -Objekts und wird als externe Schnittstelle verwendet, sodass sie wie folgt aufgerufen werden kann
Die Codekopie lautet wie folgt:
Singleton.Method ();
// Es ist einfacher, häufig zu verwenden als der gemeinsame Singleton.getInstance (). Methode ()
Eine andere Möglichkeit besteht darin, Aufzählungen zur Implementierung zu verwenden.
Das obige dreht sich alles um diesen Artikel, ich hoffe es gefällt euch.