Hallo.
Vermutlich nur eine kurze Frage.
Die Definition von Singleton lautet ja : "Ein Singleton ist eine Klasse, von welcher nur eine Instanz erzeugt werden kann!"
Betrachtet man nun folgenden Code
Jetzt kann ich doch in der main-Funktion folgendes tun:
Somit habe ich doch 2 Instanzen der Klasse erstellt, was ja eigentlich vermieden werden soll ?!?
Wo liegt mein Fehler ?
Vielen Dank
Gruß
Vermutlich nur eine kurze Frage.
Die Definition von Singleton lautet ja : "Ein Singleton ist eine Klasse, von welcher nur eine Instanz erzeugt werden kann!"
Betrachtet man nun folgenden Code
Code:
public class MySingleton{
private static MySingleton mySingelton;
private MySingleton(){
}
public static MySingleton getInstance(){
if (mySingelton == null)
mySingelton = new MySingleton();
return mySingelton;
}
public void doSomething(){
System.out.println("foo");
}
}
Jetzt kann ich doch in der main-Funktion folgendes tun:
Code:
public static void main(String args[]){
MySingleton sing1 = MySingleton.getInstance();
MySingleton sing2 = MySingleton.getInstance();
sing1.doSomething();
sing2.doSomething();
}
Somit habe ich doch 2 Instanzen der Klasse erstellt, was ja eigentlich vermieden werden soll ?!?
Wo liegt mein Fehler ?
Vielen Dank
Gruß