次の例で、インターフェイス メソッドがクラス コンストラクターのパラメーターとして渡されたときに直接呼び出すことができる理由を誰かが説明できますか? Java 言語仕様でルールを検索しようとしましたが、見つかりません。
public interface Interface {
public void foo();
}
public class Main {
public Main() {}
public Main(Interface obj) {obj.foo();}
public static int test() {return 123;}
}