Kodrill

Java SE 17 Silver (1Z0-825-JPN) 試験 / 継承とインタフェースの使用 ・ 無料問題 5/5

継承とインタフェースの使用 問題5[抽象クラスの作成と継承]

次のコードをコンパイルした結果として正しいものを選んでください。

Main.java
interface Engine {    void start();    void stop();}​abstract class Vehicle implements Engine {    public void start() {        System.out.println("start");    }}​class Car extends Vehicle {}​public class Main {    public static void main(String[] args) {        new Car().start();    }}

選択肢

  • A.3行目でコンパイルエラーになる
  • B.コンパイルに成功し、実行すると start と出力される
  • C.6行目でコンパイルエラーになる
  • D.12行目でコンパイルエラーになる正解

解説実行して確認済み

抽象クラスは、実装したインタフェースのメソッドの一部を実装しないままにできるので、stop を実装していない Vehicle (6行目) は問題ありません。しかし、それを継承した具象クラス Car は、残っている抽象メソッド stop を実装しなければならないため、12行目でコンパイルエラーになります。

この問題の答えは、試験の対象バージョンでコードを実際に実行して確かめています。確かめ方は運営者情報に書いています。

「継承とインタフェースの使用」の要点を解説記事で読む

「継承とインタフェースの使用」の無料問題

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