Aluleiros, aprendi que quando se trata de polimorfismo o java sempre utiliza a classe mais específica. Na saído do programa foi impresso pai. Gostaria de saber porque foi utilizado o metodo getNome do pai e não do Filho, sendo a Classe filho na ocasião é a classe mais específica.
public class Filha extends Pai{
public static String getNome() {
return "filha";
}
}
public class Pai {
public static String getNome() {
return "Pai";
}
}
public class ExecutaPai {
public static void main(String[] args) throws Exception {
Pai pai = new Pai();
Pai filho = new Filha();
System.out.println(filho.getNome());
}
}