Javaの基本誤り発見
Javaの「final修飾子」に関する記述のうち、誤っているものはどれですか?
A.finalを付けたクラスは継承することができない。
✓ この記述は正しい。finalクラスはサブクラスを持つことができません(例:Stringクラス)。
B.finalを付けたメソッドはサブクラスでオーバーライドすることができない。
✓ この記述は正しい。finalメソッドはオーバーライドが禁止されます。
C.finalを付けた変数は一度値を代入すると再代入できないが、参照型の場合はオブジェクトの内部状態を変更することはできる。
✓ この記述は正しい。final参照変数は再代入不可ですが、参照先オブジェクトの変更は可能です。
D.finalを付けたインスタンス変数は、宣言時ではなくコンストラクタよりも後に初期化しなければならない。← 正解
✓ 正解です。この記述が誤りで、正しくはfinalインスタンス変数は宣言時またはコンストラクタ内で初期化する必要があります。