globale Objekte

Persönliche Seite #3068331
Lesenswert?

Ich benutze eine Bibliothek, die auf Grafikkarten rechnet. Diese stellt 
eine Warteschlagne zur Verfuegung, in welche die Rechenjobs eingereiht 
werden. Mein Programm besteht aus mehreren Klassen, welche bestimmte 
Jobs an die Grafikkarten senden muessen. D.h. ich muss die Warteschlange 
global fuer alle Objekte verfuegbar machen. Wie geht man hier vor? 
Bisher uebergebe ich jedem Konstruktor eine Referenz auf die 
Warteschlange, so dass diese im jeweiligen Objekt hinterlegt wird. 
Allerdings war das eine spontane Loesung. Ich weiss nicht, ob das zu 
irgendwelchen (in Hinsicht auf die Klassenstruktur konzeptuellen) 
Problemen fuehren koennte.
#3068446
Lesenswert?

Ich würde über das "singleton" Entwurfsmuster gehen.

Java
1
class TEST
2
{
3
    private static TEST obj = new TEST();
4
    private TEST(){}
5
    public static TEST GetInstance()
6
    {return obj;}
7
}

Aufgerufen wird es mit:
1
TEST testobjekt = TEST.GetInstance()

Diese Implementierung ist sogar threadsafe.

Für andere Implementierungen kannst du auch auf Wikipedia schauen oder 
google bemühen.

Schöne Grüße

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren