Herança em métodos estáticos
Por que o código abaixo imprime "Principal"?
public class Main
{
public static void method()
{
System.out.println("Main");
}
public static void main(String[] args)
{
Main m = new SubMain();
m.method();
}
}
class SubMain extends Main
{
public static void method()
{
System.out.println("SubMain");
}
}
Em tempo de execução,m
está apontando para uma instância deSubmain
, por isso deve conceitualmente imprimir "SubMain".