Hi,
eine Frage!
Ich habe eine Oberklasse sagen wir dazu Person.
Und eine Unterklasse die von Person erbt die Klasse Student.
Ich habe in der Klasse Person irgen einen Mehtode sagen wir mal dazu void alter(int a);
und in der Klasse Student erstelle ich die gleiche Methode nur mit anderen Verhalten aber gleichem Namen und Parametern. Also eine gültige Überschreibung.
Jetzt die Frage:
Wenn ich versuche die Methode der Unterklasse aus der Oberklasse heraus aufzurufen wieso ruft er dann die Methode der Oberklasse auf?
Also
class Person....
public Person (){
Student s = new Student(alter(25));
.....
}
Also beim Debuggen springt mir das immer in die Methode der Oberklasse.
Wenn ich dann in der Studentenklasse diese Methode aufrufen möchte springt er mir nicht in die Methode der Oberklasse rein.
Ich hab erst daran gedacht das sich überschrieben Methoden wie Konstrukoren verhalten, dass beim erstellen des Objektes einer Unterklasse erst immer der defaultkonstruktor der Oberklasse aufgerufen wird und er dann erst den eigenen Konstruktor aufruft.
eine Frage!
Ich habe eine Oberklasse sagen wir dazu Person.
Und eine Unterklasse die von Person erbt die Klasse Student.
Ich habe in der Klasse Person irgen einen Mehtode sagen wir mal dazu void alter(int a);
und in der Klasse Student erstelle ich die gleiche Methode nur mit anderen Verhalten aber gleichem Namen und Parametern. Also eine gültige Überschreibung.
Jetzt die Frage:
Wenn ich versuche die Methode der Unterklasse aus der Oberklasse heraus aufzurufen wieso ruft er dann die Methode der Oberklasse auf?
Also
class Person....
public Person (){
Student s = new Student(alter(25));
.....
}
Also beim Debuggen springt mir das immer in die Methode der Oberklasse.
Wenn ich dann in der Studentenklasse diese Methode aufrufen möchte springt er mir nicht in die Methode der Oberklasse rein.
Ich hab erst daran gedacht das sich überschrieben Methoden wie Konstrukoren verhalten, dass beim erstellen des Objektes einer Unterklasse erst immer der defaultkonstruktor der Oberklasse aufgerufen wird und er dann erst den eigenen Konstruktor aufruft.