oberste klasse herausfinden.

Status
Nicht offen für weitere Antworten.

vidi

Aktives Mitglied
stehe mir mal wieder auf dem schlauch..

habe folgene konstelation:

hier mal meine "hauptklasse"

Code:
public class TempClass 
{
		
	private Gui gui = new Gui();
	private DB2Connect db2con = new DB2Connect();
	
	public Gui getGui()
	{
		return gui;
	}
	
	public DB2Connect getDBCon()
	{
		return db2con;
	}

        public static void main(String[] args)
	{ 
		new TempClass;
	}
  
}

ich befinde mich z.B. in einem ActionEventListener eines buttons der gui.
bis zum gui-object hab ichs jetzt auch schon geschafft.
aber komme mit getParent() nun nicht weiter..
meine frage nun..wie komme ich von meinem button aus an die methode getDBCon um mir die verbindung zu holen..?

greetz und schonmal danke

vidi
 

Wildcard

Top Contributor
Geht nicht. Du bauchst eine Referenz oder musst dir eine andere Art der Kommunikation überlegen.
 

vidi

Aktives Mitglied
hmm das find ich aber irgendwie nicht logisch..
ich kann mir doch von einem button aus auch die nächst höhere ebene holen z.b. das panel in dem sich der button befindet. warum kann ich mir nicht die nächst höhere ebene meines "gui" objectsholen..?
 

AlArenal

Top Contributor
Damit du ordentlich programmierst und nicht auf einen Aufbau angewiesen bist, der variabel ist und der dich in dem Augenblick auch nicht wirklich interessiert.
 

Wildcard

Top Contributor
Code:
public class TempClass
Die Klasse ruft nur eine GUI auf, ist aber kein Teil davon.
 

vidi

Aktives Mitglied
hmm..
kannst du mir einen tip geben wie ich dann die kommunikation zwischen gui-programm-db hinbekomme? soll ich meine db-object in der gui deklarieren oder wo gehört das hin ..? normal ist doch strikte trennung zwischen oberfläche, verarbeitung und datenschicht. wie kann ich das anders abbilden..?
 

vidi

Aktives Mitglied
die tempclass soll einfach mein haupt einstiegs punkt mit main methode sein.. die nne gui und ne db verbindung aufbaut.
die gui ist nur die gui
und die dbcon ist nur die db geschichte
 

Wildcard

Top Contributor
Ich weiß nicht was dein Programm machen soll, wenn es aber grundsätzlich nur eine Verbindung zur DB gibt, kann man zum Beispiel ein Singelton anlegen das die Kommunikation mit der DB regelt.
 

vidi

Aktives Mitglied
hmm, hab mir gedacht das es nicht ganz sinvoll ist für jede operation ne neu verbindung aufzubauen. da auf der kiste ca. 9000 personen arbeiten. also eine verbindung aufbauen.. dann diese verbindung an eine klasse übergeben, die dann meine "operation" durchführt.
nur jetzt ist mein problem, bin in der gui in einem action listener von einem button, jetzt will ich eine "operation" durchführen, und dafür brauch ich die verbindung.
 

vidi

Aktives Mitglied
ich kanns natürlcih so lösen das ich meiner gui das db object übergebe..aber ist das die beste art sowas zu machen ?
 

vidi

Aktives Mitglied
oder ich kann in die gui klasse ne main methode packen..und dann in der gui klasse meine db object erzeugen..
 

Wildcard

Top Contributor
Dafür kannst du dann schon ein Singelton nehmen. Du solltest allerdings so schnell wie möglich von der DB abstrahieren und auf Objekten arbeiten. Mach bloß nicht den Fehler das überall in deinem Programm später Queries oder ähnliches stehen.
 

vidi

Aktives Mitglied
nein nein..moment ich versuche grade mal meine packet darzustellen..

ich habe nen package db, darin gibts ne generelle connect klasse..
die baut ne verbindung zur datenbank auf mit authentifizierung usw. und gibt ein Connect object zurück. darin gibts noch ne klasse mit methoden die für operationen einer bestimmten tabelle der datenbank zuständig ist..lesen, schreiben, löschen usw..

dann hab ich ein package gui, darin ist ne fenster klasse, die ganzen panels usw.. in den panels sind dann die komponenten wie buttons textfelder usw..

dann gibts noch nen listener package..da sind die ganzen listener klassen drin.
wenn jetzt z.b. auf einen button geklickt wird soll eine bestimmte operation (methode) in meiner "datenbank operations klasse" über meine zuvor erzeugte verbindung gemacht werden.

zu guter letzt hab ich noch ein steuerungs package..
hier drin ist die oben gezeigte klasse drin, die ein gui object bzw. ein db object erzeugt.
 

vidi

Aktives Mitglied
okay..d.h. genau 1ne instance meiner hauptklasse oder?

vieleicht hab ich in meinem design auch einfach nur einen denkfehler..wäre sehr dankbar wenn du mir einen tip geben könntest das sowas "schön" ist..will mir nicht was unschönes angewöhnen..

:)
 

Wildcard

Top Contributor
Nicht deine Hauptklasse. Mach dir ein Klasse die für die DB Kommunikation verantwortlich ist und implementiert sie als Singelton.
 

vidi

Aktives Mitglied
so hat alles geklappt..danke nochmal für den tip mit dem singleton..ist echt ne feine sache.. erzeuge mir jetzt wann immer ichs brauch ne neue-alte instanz :)
 

vidi

Aktives Mitglied
hast dich garnicht zur struktur geäussert..?
ists so schlimm ;) ?
wie hättet ihr das gelöst..?
komme halt von der prozeduralen welt..da ist dat alles bissl anders.. :)
 

Wildcard

Top Contributor
Naja, eine package-Struktur alleine liefert da einfach wenig Aufschluß.
Wirklich interessant ist Objektkommunikation und Kapselung.
Ganz davon abgesehen ist das immer eine sehr Anwendungsspezifische Sache und erfordert viel Planung...
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Methodenübersicht einer Klasse einsehen Allgemeine Java-Themen 14
Jose05 Java-Klasse im extra cmd-Fenster ausführen Allgemeine Java-Themen 3
torresbig Klasse mit extends Calendar über Methoden ändern (Hirnblockade) Allgemeine Java-Themen 7
A Zweite Service Klasse beim Kompilieren Allgemeine Java-Themen 6
B Ein Objekt einer Klasse mehreren anderen Klassen zur Verfügung stellen? Allgemeine Java-Themen 6
Atten007 Java-Klasse auf macOS entpacken? Allgemeine Java-Themen 2
M Klasse durch Klassen Aufteilung verbessern, aber wo? Allgemeine Java-Themen 1
E Eine Methode einer extendeten Klasse deakitivieren Allgemeine Java-Themen 12
H Kombination Interface und Abstrakte Klasse bei Generics Allgemeine Java-Themen 3
EinNickname9 Best Practice Singleton und Singleton mit Instanz zu anderer Klasse -Pattern Allgemeine Java-Themen 30
Y ImagePanel von anderer Klasse in eine MainFrame Klasse hinzufügen. Allgemeine Java-Themen 1
Lukas2904 Schleife mit ansteuerung einer Klasse Allgemeine Java-Themen 5
d.lumpi Aus Einer Klasse auf ein Objekt einer anderen Klasse Zugreifen Allgemeine Java-Themen 1
missy72 Klassen Eigene Klasse MessageWindow ähnlich der Alert Klasse Allgemeine Java-Themen 2
Drachenbauer wie kann ich alle instanzen einer Klasse durchsehen, ohne, dass diese in einer Liste erzeugt wurden? Allgemeine Java-Themen 11
kanywayne Java programmieren: Polynom Klasse Allgemeine Java-Themen 4
L Die abzuleitende Klasse als Parameter übergeben Allgemeine Java-Themen 4
S Klassen Einfügen von unbekannter menge an Variablen in eine Klasse mithilfe von ASM Allgemeine Java-Themen 5
C Klasse mit Mockito simulieren Allgemeine Java-Themen 9
P einen public <Optinal String> in einer anderen Klasse mit einem Int vergleichen Allgemeine Java-Themen 2
S Wenn eine Klasse zwei Interfaces mit derselben Methodensignatur implementiert: welche wird aufgerufen? Allgemeine Java-Themen 15
Thallius Key/Value Table in Klasse einlesen Allgemeine Java-Themen 14
S static in Interface und Klasse Allgemeine Java-Themen 2
W Was genau sind IOTools? Kann ich stattdessen nicht die Scanner Klasse verwenden? Allgemeine Java-Themen 3
V Threads Probleme beim Aufrufen von Methoden einer anderen Klasse (Threads) Allgemeine Java-Themen 14
X Collections Gibt es eine Klasse welche die Vorteile von List und HashMap vereint, aber konstante Laufzeit (O(1)) hat in Java? Allgemeine Java-Themen 4
D javassist API Klasse in MethodCall ermitteln Allgemeine Java-Themen 8
kodela Klasse mit "gezipten" Daten Allgemeine Java-Themen 6
J Builder Klasse mit Lombok bauen Allgemeine Java-Themen 2
L Operatoren Java Reflections: Alle Methoden einer Klasse aufrufen ohne Exceptions Allgemeine Java-Themen 5
M [SOAP] - Klasse aus WSDL ausschließen Allgemeine Java-Themen 2
N Generic Type einer Generischen Klasse während der Laufzeit bekommen Allgemeine Java-Themen 2
X Klassen Klasse BreakIterator Allgemeine Java-Themen 6
R Arraylist in andere Klasse leiten und bearbeiten Allgemeine Java-Themen 10
kodela Klassen Klasse "vergisst" ihre Daten Allgemeine Java-Themen 2
pkm Kann eine ServerSocket-Klasse nicht stateful sein? Allgemeine Java-Themen 4
E Socket Dynamische Klasse von ObjectOutputStream lesen. Allgemeine Java-Themen 8
M Matcher-Klasse findet match nicht Allgemeine Java-Themen 6
cool_brivk24 Variablen abfragen von Boolean von anderer Klasse Allgemeine Java-Themen 12
S Seltsames Ergebnis mit Date-Klasse Allgemeine Java-Themen 6
J int Werte in einer anderen Klasse in Arrays speichern Allgemeine Java-Themen 3
D Warum kann ich eine (deflaut) Klasse aus einer Libary in einem anderen Projekt benutzen? Allgemeine Java-Themen 3
Neoline Klassen Singleton Klasse buchmanager Allgemeine Java-Themen 19
M Kapselung Modellierung von Intervallen: Klasse Interval Allgemeine Java-Themen 4
B Übernommene Variablen(werte) aus der Main-Klasse ändern? Allgemeine Java-Themen 9
ReinerCoder Klasse kann nicht public deklariert werden Allgemeine Java-Themen 2
ReinerCoder Methode einer Klasse meldet Fehler "misplaced construct(s)" Allgemeine Java-Themen 13
I Collection - contains-Methode überschreiben (anonyme innere Klasse) Allgemeine Java-Themen 4
X Klassen File-Klasse wird als Directory markiert Allgemeine Java-Themen 8
S Methoden Liste soll Methode aus innerer Klasse aufrufen Allgemeine Java-Themen 4
J IndexOutOfBoundsException bei der Nutzung der Klasse Message von mime4j Allgemeine Java-Themen 5
P Array einer abstrakten Klasse Allgemeine Java-Themen 4
J Zugriff auf erstellte Objekte einer Klasse von einer Klasse ausserhalb Allgemeine Java-Themen 3
kodela Dynamisches Array in einer Klasse Allgemeine Java-Themen 5
M Was geschieht mit Java-Klasse, die aus ArrayList entfernt wird? Allgemeine Java-Themen 10
perlenfischer1984 Lombok Builder soll andere Klasse bauen Allgemeine Java-Themen 4
perlenfischer1984 Mit Lombok Builder Felder in Super Klasse füllen Allgemeine Java-Themen 12
T String aus While Schleife für ganze Klasse sichtbar machen Allgemeine Java-Themen 5
K Best Practice Auf die Klasse zugreifen im erzeugten ActionListener Allgemeine Java-Themen 2
K Mit Button neue Klasse öffnen Allgemeine Java-Themen 9
J Reflection mit Klasse und Subklasse Allgemeine Java-Themen 11
C Classpath Neue Klasse über einen Button ausführen Allgemeine Java-Themen 3
magdaStone Logikproblem Umschalten von booleans in anderer Klasse Allgemeine Java-Themen 7
P mehrer Verschiedene Objekte in einer Klasse erstellen. Allgemeine Java-Themen 4
A Java Klasse auf Tomcat während der Laufzeit austauschen Allgemeine Java-Themen 1
C Abstrakte Klasse, lokale Variable-Problem Allgemeine Java-Themen 1
N Vererbung Design-Problem mit vorhandenen, von der Klasse unabhängigen Methoden Allgemeine Java-Themen 12
Messoras Klassen Sämtliche Variablen einer Klasse übernehmen Allgemeine Java-Themen 6
H Methoden Methode 'updateItem' der Klasse 'TreeCell' Allgemeine Java-Themen 3
B Animierte Klasse schreiben - Wie? Allgemeine Java-Themen 9
M Klassen Eine Klasse in mehreren Klassen einbinden Allgemeine Java-Themen 11
N Methoden Methoden einer Klasse auf Grundlage eines Strings aufrufen Allgemeine Java-Themen 6
AssELAss Log4j Logging Ausgabe für jede Klasse in seperates File Allgemeine Java-Themen 2
L Eclipse JavaFX Klasse starten programmatisch Allgemeine Java-Themen 1
F Try/catch über ganze Klasse Allgemeine Java-Themen 9
L Von ArrayList abgeleitete Klasse nur mit bestimmten Objekten füllen Allgemeine Java-Themen 1
so_ein_Komischer Erste Schritte java Math Klasse finden? Allgemeine Java-Themen 2
J beans.instantiate(): Klasse kann nicht instanziiert werden Allgemeine Java-Themen 2
I Interface Interface / Klasse - wieso Abstract? Allgemeine Java-Themen 13
R Abstrakte Basisklasse und instanzierte Objekte der abgeleiteten Klasse als Basisklasse übergeben Allgemeine Java-Themen 2
F Methodenaufruf mit abgeleiteter Klasse als Arg... Allgemeine Java-Themen 10
M Klasse in separaten Thread ausführen.Wie genau? Allgemeine Java-Themen 2
A Best Practice Unterschied zwischen einer sauberen Dependency Injection und einer statischen Klasse Allgemeine Java-Themen 5
F Methoden in der Enumeration Klasse Allgemeine Java-Themen 1
S Die Initialisierung von Feldern in ableitender Klasse erzwingen..? Allgemeine Java-Themen 16
S Mit Generics Klasse erstellen die selbst T erweitert..? Allgemeine Java-Themen 4
M Variable außerhalb Klasse definierbar? Allgemeine Java-Themen 2
F Abstrakte Klasse in "For each" Schleife Allgemeine Java-Themen 1
F Enums als innere Klasse sinnvoll? Allgemeine Java-Themen 3
C Klassen Problem mit Funktion einer Generischen Klasse die ein Interface implementiert Allgemeine Java-Themen 0
K Problem: Java-Klasse mit mehreren Threads als eigenen Prozess starten Allgemeine Java-Themen 3
N Automatisches einfügen einer selbst generierten ID in Klasse mit Annotation Allgemeine Java-Themen 8
F Klassen Klasse bei Button klick öffnen Allgemeine Java-Themen 11
F OOP Datenbank-Klasse überall verfübar Allgemeine Java-Themen 2
E KeyCode in anderer Klasse speichern Allgemeine Java-Themen 2
B Klassen Eigene Klasse als Array benutzen Allgemeine Java-Themen 3
M File IO Klasse ... wie einbinden Allgemeine Java-Themen 6
M XML DOM Klasse die Iterable Implementiert Allgemeine Java-Themen 1
P Name der Parent Klasse abfragen Allgemeine Java-Themen 8
D Arraylist eigener Klasse an iReport übergeben Allgemeine Java-Themen 7

Ähnliche Java Themen

Neue Themen


Oben