Dove indica l'oggetto abbattuto?
Domanda
public class Animal{
int n = 5;
public static void main(String[] args) {
Animal a = new Animal();
Animal ah = new Horse();
Horse h = new Horse();
System.out.println(h.n); // prints 7
System.out.println(ah.n); // prints 5
h = (Horse) ah;
System.out.println(h.n); // prints 7
}
}
class Horse extends Animal{
int n = 7;
}
La mia domanda:
Perché lo fa h.n
ancora stampare 7 dopo h = (Horse) ah
? Dopo l'incarico dovrebbe indicare lo stesso oggetto che ah
Punti e Nincetti di campo N a 5?
Nessuna soluzione corretta
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow