Confusión en el método de interfaz Java de llamada
Digamos que tengo una interfaz A, definida de la siguiente manera:
public interface A {
public void a();
}
Incluye método llamadovoid a();
Tengo una clase que implementa esta interfaz y tiene un solo método:
public class AImpl implements A {
@Override
public void a() {
System.out.println("Do something");
}
}
P: Si en la clase principal, llamo al método de interfaz, ¿llamará a la implementación que pertenece a la clase que implementa la interfaz?
Por ejemplo:
public static void main(String[] args){
A aa;
aa.a();
}
¿Se imprimirá "Haz algo"?