インターフェイスの 1 つのシナリオで混乱しています。以下toString()
は、インターフェイスでメソッドを宣言していないコードです。
これはオブジェクト クラスのメソッドです。ただし、メソッドtoString()
は親クラスの参照変数から実行できます。ただし、ルールでは、子クラスのメソッドを呼び出す前に、まずインターフェイス内のメソッドを参照し、メソッドが存在する場合は子クラスのメソッドを呼び出します。しかし、このシナリオでは、インターフェイスで宣言せずにどのようtoString()
に実行されるか説明してください
public interface Parent {
void show();
}
class Base implements Parent {
public void show() {
System.out.println("hey it is going to be execute");
}
public String toString() {
return "itspossible";
}
public static void main(String[] args) {
Parent parent = new Base();
System.out.println(parent.toString());
}
}