回答編集履歴
1
訂正
answer
CHANGED
@@ -3,4 +3,4 @@
|
|
3
3
|
今CクラスはAクラスを継承しており、Aクラスがvoidで引数なしのtestメソッドを持っているので、Cクラスも同じtestメソッドを持っています。なので、Bインタフェースとして扱ってもtestメソッドに問題なくアクセスできるため、エラーになりません。
|
4
4
|
そしてこの状態でCのインスタンスを生成すればtestメソッドはAクラスで定義したメソッドになるため、Bインタフェースからそれを呼んでも同じになるのです。
|
5
5
|
|
6
|
-
同じような理由で、同名・同シグネチャで同じ型を返すメソッドを持つインタフェースを複数同じクラスに実装しても問題ありません。インタフェースが興味が有るのはオーバーライド関係にあるメソッド名だけなので、そのメソッドが
|
6
|
+
同じような理由で、同名・同シグネチャで同じ型を返すメソッドを持つインタフェースを複数同じクラスに実装しても問題ありません。インタフェースが興味が有るのはオーバーライド関係にあるメソッド名だけなので、そのメソッドがクラスのどこにあろうとも問題ないのです。
|