Java Reference
In-Depth Information
// Datei: ToolTipManager2.java
final public class ToolTipManager2
{
private static ToolTipManager2 instance = new ToolTipManager2();
private ToolTipManager2()
{
System.out.println ("ToolTipManager2 erzeugt.");
}
public static ToolTipManager2 getInstance()
{
System.out.println ("ToolTipManager2::getInstance()");
return instance;
}
public void operation()
{
// eigentliche Funktionalität des Singleton
System.out.println ("operation() aufgerufen.");
}
}
Es ist zu sehen, dass sich die Vereinbarung der Klassenvariable instance von der
ersten Variante unterscheidet.
In der zweiten Variante wird sofort beim Programmstart ein Exemplar der Klasse
ToolTipManager erzeugt und nicht erst beim Aufruf von getInstance() .
Der Zugriff erfolgt dabei - wie in der ersten Variante - mit Hilfe der Methode get-
Instance() . Im Folgenden die Klasse Client2 :
// Datei: Client2.java
public class Client2
{
public static void main (String[] args)
{
ToolTipManager2.getInstance().operation();
ToolTipManager2.getInstance().operation();
ToolTipManager2.getInstance().operation();
}
}
Die Ausgabe des Programms ist:
ToolTipManager2 erzeugt.
ToolTipManager2::getInstance()
operation() aufgerufen.
ToolTipManager2::getInstance()
operation() aufgerufen.
ToolTipManager2::getInstance()
operation() aufgerufen.
Search WWH ::




Custom Search