Kodrill

Java SE Bronze (1Z0-818-JPN) 試験 / 継承とポリモフィズム ・ 無料問題 3/3

継承とポリモフィズム 問題3[抽象クラスやインタフェースの定義と実装]

次のコードを実行したときの出力を選んでください。

Main.java
interface Flyable {    void fly();}​interface Swimmable {    void swim();}​class Duck implements Flyable, Swimmable {    public void fly() {        System.out.println("fly");    }​    public void swim() {        System.out.println("swim");    }}​public class Main {    public static void main(String[] args) {        Flyable f = new Duck();        Swimmable s = new Duck();        f.fly();        s.swim();    }}

選択肢

  • A.fly
  • B.コンパイルエラー
  • C.swim fly
  • D.fly swim正解

解説

クラスは複数のインタフェースを実装でき、実装したどのインタフェース型の変数にも代入できます。f.fly()、s.swim() の順に呼び出しているので、fly → swim の順に出力されます。

「継承とポリモフィズム」の無料問題

ここで公開しているのは無料範囲の問題です。無料登録すると、解答の記録・ダッシュボードでの復習ができ、 プレミアムならこの問題セットの全問題と本番形式の模擬試験も解けます。