class Pai { }
class Filho extends Pai { }
public class TesteHeranca {
public static void main(String[] args) {
Filho fo = (Filho)new Pai();
Pai pai = new Pai();
if (fo instanceof Pai) {
System.out.println("TRUE");
} else {
System.out.println("FALSE");
}
}
}
Acho que quando executar vai dar erro no casting de pai p/ filho.
É isso?
Eu acho que dá erro nesse casting
Filho fo = (Filho)new Pai();
isso mesmo!
Porque erro no casting?
Estou com duvida…
[quote=“hivaj”]Porque erro no casting?
Estou com duvida…[/quote]
Eu acredito que seja o seguinte:
Você pode fazer isso:
Pai pai = (Pai)new Filho();
Porque a classe Filho tem tudo que o Pai tem e mais alguma coisa, então é possivel fazer isso…
agora o contrário não é válido pois não é possivel fazer o casting ao contrário…
bom eu não sei se essa realmente é a explicação correta, mas eu acredito que seja isso sim!
[]'s