インターフェースの多重実装の実験Advertisement多重実装
インターフェースを多重実装してみる。
public interface Car {
public void run();
}
public interface Bicycle {
public void run();
}
public class SuperVehicle implements Car, Bicycle{
public void run(){};
}
インターフェースCarとBicycleに同じ定義のメソッドが存在する。この場合、問題なくコンパイル・実行を行うことができる。次にインターフェースCarのrunメソッドの戻り値の型を変更してみる。
public interface Car {
public boolean run();
}
public interface Bicycle {
public void run();
}
public class SuperVehicle implements Car, Bicycle{
public void run(){};
}
コンパイル
SuperVehicle.java:2:
SuperVehicle の run() は Bicycle の run() を実装できません。
互換性のない戻り値の型を使おうとしました。
検出値 : void
期待値 : boolean
public void run();
^
エラー 1 個
コンパイルエラーとなった。
Advertisement |
ショートカット・634・このカテゴリのトップページに戻る ・634labs UIコレクションギャラリー サイト検索Y!ログール |