Oberklassen und Unterklassen, Arrayzugriff

F

Fabse

Gast
Hallo Leute,

ich habe gerade wieder Java zu programmieren angefangen. Kann mir jemand sagen, wie ich den Zugriff einfach gestalten kann:
Ich habe eine Reihe von Objekten auf denen ich die selben Operationen ausführen will:

Java:
ObjektArray=new ObjektOberklasse[100];

nun ist aber ein Teil der Objekte besonders, sie sind erweitert und auf denen möchte ich noch weitere Operationen ausführen. So erzeuge ich die Objekte:

Java:
ObjektArray[for i=0..49]=new ObjektOberklasse();
ObjektArray[for i=50..99]=new ObjektUnterklasse(); //Hier passiert das Besondere


Mit der Definition von der Objektunterklasse:

Java:
ObjektUnterklasse extends ObjektOberklasse{
public int UnterklassenMethode(){
...}}

Nun möchte ich wie gesagt mit den letzten 50 Objekten mehr machen, sprich eine Unterklassenmethode aufrufen. Der Zugriff:
ObjektArray[50].UnterklassenMethode() funktioniert nun aber nicht, da für den Compiler ObjektArray[50] eben vom Typ Oberklasse, UnterklassenMethode nicht definiert ist.

Wie macht ihr sowas? Ich möchte nicht andauernd das Objekt casten und auch nicht jeweils immer zwei Schleifen für je ObjektOberklasse und ObjektUnterklasse verwenden.

Ich hoffe es ist verständlich und ihr helft mir
Beste Grüße
Fab
 

XHelp

Top Contributor
Ich bin mir nicht sicher, ob ich alles verstanden habe...
Wenn du die getrennt behandeln willst, dann nimm doch einfach 2 Array's.
 
F

Fabse

Gast
erstmal danke für die schnelle Antwort.
Ich möchte halt das meiste für die ersten 50 Objekte und die letzten 50 Objekte gleich machen. Für die letzten 50 Objekte gelegentlich zusätzliche Sachen ausgeführt werden (mein Programm checkt schon dass die zusätzlichen Sachen nicht mit den ersten Objekten ausgeführt werden).

Weil es aber die Grundlage eines größeren Programms werden soll, soll es auch schön ordentlich und elegant werden ;-) darum möchte ich nicht zwei Arrays nehmen. Ich dachte Java wäre da so objektorientiert polymorph und flexibel? Da muss es doch was geben!
 
G

Gast2

Gast
Du kannst per instanceof oder getClass() prüfen welche klasse sich hinter dem Objekt im Array verbirgt. Wenns dann ne Instanz deiner Unterklasse ist kannst du casten und deine zusätzlichen Operationen ausführen.

Aber gib vllt mal nen Beispiel an warum du auf einem Teil der Objekte andere operationen ausführen willst. Das lässt sich sicherlich schöner lösen :)
 
J

javsnippet

Gast
ohne eine zusätzliche schleife für die restlichen elemente zu schreiben kannst du eine alternative in die alleinige schleife einfügen. wäre das weniger schreibarbeit? nein.

Java:
for(int i=0;i<arr.length;i++){
if(i<arr.length/2){         }
else              {         }
}

aber bei polymorphie: verschiedene gleichlautende methoden in klasse und erweiternder klasse können auf dieselbe weise aufgerufen werden.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Oberklassen / Unterklassen Referenzverwendbarkeiten Java Basics - Anfänger-Themen 3
A Vererbung Oberklassen und Unterklassen Java Basics - Anfänger-Themen 4
W Vererbung Ausgabe von Objektattributen der Oberklassen Java Basics - Anfänger-Themen 4
G OOP Alle Oberklassen auflisten Java Basics - Anfänger-Themen 2
P Methoden der Unterklasse in Oberklassen-Datentyp anwenden Java Basics - Anfänger-Themen 24
I Reflection: Suche Feld + in Unterklassen Java Basics - Anfänger-Themen 7
A Klassen Vererbung und zusätzliche Unterklassen Java Basics - Anfänger-Themen 23
G Unterklassen (Klasse für Ausgabe) Java Basics - Anfänger-Themen 4
S getter, setter in abstrakter Klasse oder lieber Unterklassen Java Basics - Anfänger-Themen 4
K Vererbung Auf Methoden von Unterklassen zugreifen Java Basics - Anfänger-Themen 6
R Abfrage von Variablen in Unterklassen einer ArrayList Java Basics - Anfänger-Themen 9
S Vererbung Objekte von Ober - und Unterklassen zählen Java Basics - Anfänger-Themen 3
C Super und Unterklassen Java Basics - Anfänger-Themen 6
K Vererbung protected NUR für Unterklassen? Java Basics - Anfänger-Themen 17
L Objekte zählen mehrerer Unterklassen Java Basics - Anfänger-Themen 3
B Unterklassen von Exeptions müssen importiert werden ? Java Basics - Anfänger-Themen 3
J Klassen, Unterklassen, Vererbung - Compilerfehler Java Basics - Anfänger-Themen 11
M Unterklassen mit unterschiedlicher Zustandsanzahl Java Basics - Anfänger-Themen 15
M Unterklassen Java Basics - Anfänger-Themen 5
B Unterklassen, Packages Java Basics - Anfänger-Themen 3
G abstracte Klassen und deren Unterklassen Java Basics - Anfänger-Themen 10
T Konstruktor bei Unterklassen? Java Basics - Anfänger-Themen 4
G Klassen und Unterklassen Fragen Java Basics - Anfänger-Themen 18
E Zugriff auf unterklassen! Java Basics - Anfänger-Themen 8
E ober und Unterklassen Java Basics - Anfänger-Themen 2
E Unterklassen auf gemeinsame Oberklasse zugreifen Java Basics - Anfänger-Themen 8
J Cast zwischen zwei Unterklassen der selben Oberklasse. Java Basics - Anfänger-Themen 7
G Unterklassen finden Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben