1 Methode für viele verschiedene Klassen?

Status
Nicht offen für weitere Antworten.

Verjigorm

Top Contributor
Folgendes Problem:

Ich habe eine beliebige Anzahl Klassen (1 - xx), die alle auf die Methode einer "zentralen Klasse" zugreifen sollen
ungefähr so:

Code:
hauptklasse.tueEtwas(String,this);

nun wie realisiere ich es, dass ich "this" übergeben kann ohne in der Methode einen genauen Typ anzugeben?

wenn das so aussieht:
Code:
public void tueEtwas(String s, Klasse1 k1){}

müsste ich die Methode für jede Klasse k1 bis k234 hart coden?
Das geht doch sicher irgendwie anders oder?

mfg Verjigorm
 
Entweder du übergibst als Parameter ein Object-Objekt (was für'n Unwort ;-) ) oder du leitest alle von einer gemeinsamen Superklasse ab und übergibst dann ein Objekt dieser an die Methode.
 
JPKI hat gesagt.:
Entweder du übergibst als Parameter ein Object-Objekt (was für'n Unwort ;-) ) oder du leitest alle von einer gemeinsamen Superklasse ab und übergibst dann ein Objekt dieser an die Methode.

Sowas habe ich bereits versucht:
Code:
public void tueEtwas(String s, Object obj){}

aber ohne Erfolg, wenn ich dann obj.getIrgendwas() aufrufe sagt der immer, kennt er nicht ...



Wildcard hat gesagt.:
Standardaufgabe für ein Interface.

du meinst, dass die Klassen 1-xx das interface implementieren?
 
Dann müsste ich das halbe Programm umbauen, weil nur die Hauptklasse Zugriff auf die weitere Abfolge des Programms hat
 
Ich meinte eigentlich:
Code:
public abstract class Superclass {
 public abstract Object getIrgendwas(); }
Code:
public class Klasse1 extends Superclass...
Code:
public class Klasse2 extends Superclass...
Und dann tueEtwas so aufrufen:
Code:
hauptklasse.tueEtwas(String,this);
Die tueEtwas-Methode:
Code:
public void tueEtwas(String s, Superclass superclass) {
//Code
}
 
Hier treffen 2 Projektenden aufeinander 🙂

Die Klassen 1-xx kenn ich nicht, ich soll den String übernehmen, parsen, zerlegen etc. und dann die Einzelkomponenten abspeichern und auch wieder in den Klassen selbst speichern per set-Methoden.
Da es quasi mehrere Rückgabeparameter gibt, scheidet ein return also aus, ausser ich speicher das in nem Array oder so

Werd ich am besten nochmal Rücksprache halten, weil das is ne heikle Schnittstelle merke ich grade 😀

Naja trotzdem erstmal vielen Dank
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben