¿Por qué el siguiente código imprime "Principal"?Herencia en métodos estáticos
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");
}
}
En tiempo de ejecución, m
está apuntando a una instancia de Submain
, por lo que debe imprimir conceptualmente "subprincipal".
Incluso puede escribir 'Main m = null;' y luego llamar al método, la expresión antes de que el punto no se utilice en absoluto. –