Objektzugriff

Status
Nicht offen für weitere Antworten.

krihue

Mitglied
Hallo,

ich versuche im Moment eine einfaches Fehlerhandling zu implementieren. In meiner Hauptklasse (Main) arbeite ich mit SWT und möchte nun in einer anderen, unabhängigen Klasse im Falle eines Fehlers mittels einer Fehlerklasse eine Message (Dialogbox) ausgeben. Dazu benötige ich jedoch die Variable bzw die Instanze der Shell aus der Main-Klasse. Wie komme ich nun an diese ran, ohne die Shell überall mit hinzuschleifen?

Habt ihr Vorschläge? Ich steh im Moment auf dem Schlauch :shock:
 

SnooP

Top Contributor
Wenn deine shell nur einmal existieren darf, kannst du aus ihr ein Singleton machen. Das heißt via privatem Konstruktor und einer getInstance Methode in dieser Klasse wird garantiert, dass nur eine Instanz dieser Klasse erzeugt werden kann, diese wird in ein entsprechendes Feld dieser Klasse selbst abgelegt, wenn sie noch nicht existiert. Alle weiteren Zugriffe auf die statische (!) getInstance Methode liefert jetzt die Instanz die in diesem Feld liegt...
Hat den Vorteil, dass du von überall per Shell.getInstance() direkt auf diese Instanz zugreifen kann... selbst wenn die Instanz anfangs noch nicht existiert, wird sie dann beim ersten Zugriff erstellt.
 

ssl-boon

Mitglied
wenn ich dich richtig verstanden habe möchtest du auf die "Main-Klasse" also die klasse in der die main ist einer anderen die möglichkeit geben auf die "Main-Klasse" zuzugreifen. dann instanziiere deine Fehlerklasse mit dem übergabeparameter für den konstruktor mit "this" MeineFehlerklasse mfk = new MeineFehlerklasse(this);
 

SamHotte

Top Contributor
Oder du kannst von überall her mittels
Code:
Display.getCurrent().getActiveShell()
deine aktive Shell benutzen.
 

krihue

Mitglied
Danke für die Tipps. Über singleton hatte ich auch schon drüber nachgedacht aber
Code:
Display.getCurrent().getActiveShell()
ist genau das was ich gesucht habe. Vielen Dank nochmal.
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen

Neue Themen


Oben