Polymorphische Paramter
Wir benötigen eine neue Klasse. Diese nenne ich Mechaniker:
public class Mechaniker {
public void macht(Auto einAuto) {
einAuto.reparieren();
}
}
Und dieser Mechaniker macht etwas. Nämlich das Auto(Objekt) das er als Parameter übergeben bekommt reparieren.
public class Panjutorials {
public static void main(String[] args) {
Mechaniker siggi = new Mechaniker();
Auto a6 = new Audi();
Auto x7 = new BMW();
siggi.macht(a6);
siggi.macht(x7);
}
}
Was hierbei nun neu ist, ist dass wir ein Objekt vom DatenTypen Auto erzeugen, welches unterschiedliche Arten von Objekten sein können. Die Referenzvariablen, denen wir ein Objekt zuweisen, können wir als Paramter verwenden.
Wir übergeben also unserer Referenzvariable siggi nun ein Referenzvariable als Paramter und lassen ihn die Methode macht() ausführen, die wiederrum abhängig davon von welchem Objekt des Datentyps Auto etwas ausgibt.