Javaの基本定義問題
Javaにおける「インタフェース」の説明として正しいものはどれですか?
A.フィールドのみを定義でき、メソッドは持てない型のこと
✗ インタフェースはメソッドのシグネチャを定義できます(Java 8以降はデフォルトメソッドも可)。フィールドのみという説明は誤りです。
B.既存のクラスを継承して新しいクラスを作成する仕組みのこと
✗ それは継承(extends)の説明です。インタフェースはimplementsキーワードで実装します。
C.クラスが実装すべきメソッドの仕様(シグネチャ)を定義する抽象的な型のこと← 正解
✓ 正解です。インタフェースはクラスが持つべきメソッドの仕様を定義し、実装クラスにその処理内容を記述させる抽象型です。
D.プログラムのエラーを検出して自動的に修正する仕組みのこと
✗ エラーを自動修正する仕組みはJavaの標準機能にはありません。インタフェースとは無関係です。