問題
次のコードの[ A ]に記述できるコードはどれですか。
interface MyType {
int getValue();
}
class MyClass implements MyType {
[ A ]
}
選択肢
A) protected long getValue() { return 1L; }
B) public abstract int getVaule();
C) public int getValue() { return '1'; }
D) private int getValue() { return 1; }
E) protected getValue() { return '1'; }
F) public Integer getValue() { return 1; }
G) int getValue() { retrun 1; }
解答
A) protected long getValue() { return 1L; }
B) public abstract int getVaule();
C) public int getValue() { return '1'; }
D) private int getValue() { return 1; }
E) protected getValue() { return '1'; }
F) public Integer getValue() { return 1; }
G) int getValue() { return 1; }
解説
A) protected long getValue() { return 1L; }
戻り値の型に互換性がありません。
B) public abstract int getVaule();
インターフェースを実装した具象クラスは、メソッドを実装する必要があります。
D) private int getValue() { return 1; }
インターフェースを実装した具象クラスのメソッドのアクセス修飾子のレベルは、同位か緩くする必要があります。
厳しくするとコンパイルエラーとなります。
E) protected getValue() { return '1'; }
戻り値の型が指定されていません。
F) public Integer getValue() { return 1; }
戻り値の型に互換性がありません。
G) int getValue() { return 1; }
インターフェースを実装した具象クラスのメソッドのアクセス修飾子のレベルは、同位か緩くする必要があります。
厳しくするとコンパイルエラーとなります。
対象資格:Java SE17 認定資格