Nein. Es könnte nur eine nacheinander für jedes Objekt verwendet werden (vorausgesetzt, dass das Programm nicht mehr macht, wie in diesem Beispiel.) Siehe unten.
Polymorphie bedeutet "Vielgestaltigkeit." In Java bedeutet es, dass eine einzelne Variable für verschiedene Objekte verwandter Klassen (zu verschiedenen Zeitpunkten) in einem Programm verwendet werden kann.
Wenn die Variable mit der Punktnotation variable.methode()
verwendet wird, um eine Methode aufzurufen, hängt es vom Objekt ab, auf das die Variable gegenwärtig verweist, welche Methode tatsächlich ausgeführt wird.
Hier ist ein Beispiel:
. . . . // Klassendefinitionen wie vorher public class KarteTester { public static void main ( String[] args ) { Karte postkarte = new Feiertag( "Amy" ); postkarte.gruss(); //Feiertag gruss() aufrufen postkarte = new Valentin( "Bob", 3 ); postkarte.gruss(); //Valentin gruss() aufrufen postkarte = new Geburtstag( "Cindy", 17 ); postkarte.gruss(); //Geburtstag gruss() aufrufen } }
Was wird das Programm ausgeben?