Java-Überladungsmethode mit geerbter Schnittstelle

Ich versuche, Java-Verhalten zu verstehen. Verwendung dieser Schnittstellen:

public interface IA {}
public interface IB extends IA {}
public class myClass implements IB {}

Ich überlade eine Methode wie diese:

public void method(IA a);
public void method(IB b);

Beim Aufruf der Methode mit folgendem Objekt:

IA a = new myClass();
method(a);

Warum verwendet Java:

 public void method(IA a);

anstatt

public void method(IB b);

?

Vielen Dank

Antworten auf die Frage(3)

Ihre Antwort auf die Frage