Zugriff auf übergeordnete Container

Xondio

Grünschnabel
Hallo ,

mein Problem besteht darin das ich von einem Object(_1) das in einem Array(Arr_1) liegt
auf ein wert von einem anderen Object(_2) das in einem anderen Array(Arr_2) liegt zugreifen will.
alle Arrays mit den Objecten ligen in einem grossen Array(ArrAll).
nochmal :
Object_1 liegt in Arr_1
Object_2 liegt in Arr_2
Arr_1 und Arr_2 liegen in ArrAll

Object_1 will auf Object_2 zugreifen und einen Wert auslesen.

es sind Methoden zum navigieren (über Objekt-Name) vorhanden sowohl aus Arr_1,_2 und ArrAll.

Meine Idee wäre jetzt gewesen einen Zeiger auf das ArrAll jedem Object zu übergeben und mich dann aus Object_1 über den Zeiger mit den Navigationsmethoden zum entsprechenden Object_2 zu hangeln.

Eine andere Idee : Vom Object_1 aus, das übergordnete Array greifen , von da aus das übergeordnete Array zu nehmen und sich dann über die Navi methoden zum Object hangeln ....

nur weiß ich nicht ob in Java das mit dem Zeiger (oder referenz) überhaupt möglich ist oder wie man den übergeordneten Container (Array) geliefert bekommt.

Hat jemand schonmal sowas ähnliches versucht ... ?
Also Rekrusiv in so einem "Doppel" Array zu suchen ?
 
Hallo Xondio, möglich ist das. Du könntest beim Konstruieren des Objektes eine Referenz auf das ArrAll übergeben. Jedoch scheint mir das wenig sinnvoll. Irgendein Controller erzeugt Dein ArrAll, Deine beiden Arr_1 und Arr_2 und eine Menge Objekte. Gib dem doch auch die Suchmethode. Er kennt sowieso alle Objekte und verwaltet sie.
 
Der Controller hat eine Suchmethode... nur kann ich die nicht aus dem Objekt aufrufen.
Das Object soll von alleine (wenn eine aktion ausgelöst ist) das andere objekt suchen und den Wert erfragen und dann je nach dem sich verändern (zb. Farbwechsel) .

Das problem ist das das Objekt nicht den Controller kennt ... also auch nicht darauf zu greifen kann , da alle Objekte und Arrays Anonym erzeugt worden sind ...

Das Object müsste also irgendwie Rekrusiv in der Struktur nach hinten laufen um die Suchmethode zu benutzen. Nur wie bekomme ich den Container eines Objektes ?
gibt es da sowas wie getRootPane() oder so ?

Wie würde das ausehen wenn ich eine Referenz übergebe?
new Objekt(name, art, type,"Referenz auf ArrAll")
bzw wie schreibt man in so einem fall eine Referenz ?
 
Danke für die Hilfe waterhouse533-lp :)

ich stand wohl etwas aufm schlauch ;D

bzw bin da bissl mit den Refrenzen in Java und Referenzen in C++ bzw Perl dürcheinandergekommen ;D

Danke für die Denkanstöße .. habs gelöst ;)
 
Hallo,

genau zu diesem Thema: Also gibt es in solch einer Situation keine andere Möglichkeit ausser einer Objektrefferenz, wodurch dann immer das alte Objekt durch die Refferenz ersetzt werden muss? Selbst wenn die Objekte im Container Namen haben?

Irgendwie knabber ich da schon eine ganze Weile daran ob es nicht doch irgendwie geht, aber ich kriegs nicht hin.
 
Zurück