class Father {
void name() {
System.out.println("This is father");
}
void details() {
System.out.println("He is the head of the family");
}
void traits() {
System.out.println("He loves everyone");
}
}
class Son extends Father {
@Override
void name() {
System.out.println("This is the son");
}
@Override
void details() {
System.out.println("He is the youngest one in the family");
}
}
public class overridingDoubt {
public static void main(String... args) {
System.out.println("Father type ref");
System.out.println("******************");
Father obj = new Son();//This raises my doubt
obj.name();
obj.details();
obj.traits();
System.out.println("\n \n Son type ref");
System.out.println("******************");
Son obj1 = new Son();
obj1.name();
obj.details();
obj.traits();
}
}
Beide Referenzen erzielen die gleichen Ergebnisse. Ich möchte nur ein reales Lebensszenario kennen, in dem die Elternklasse sehr wichtig ist.Warum verwenden wir die Übergeordnete Klassenreferenz zum Überschreiben in Java?
Mir wurde ein Szenario gesagt, in dem wir alle Objekte in einer Liste speichern möchten, und das Verwenden von Elternklassenreferenz würde uns das erreichen lassen.
Es scheint, wie der Code über Polymorphismus zu lehren versucht ... – Ian
Ja .. Es ist .. Und das ist der Grund, warum ich möchte wissen, was bei der Verwendung Referenzen Elternteil Typ der Punkt ist, wenn wir das einfach erreichen können Gleiche Sache mit Kind Typ Referenzen. –
OK, ich habe eine Antwort versucht, weiter zu erarbeiten ... – Ian