Javaの基本比較問題

Javaにおける「オーバーライド」と「オーバーロード」の違いとして正しいものはどれですか?

A.オーバーライドは同じクラス内でメソッド名と引数の型を変えることで、オーバーロードは親クラスのメソッドを再定義することである
✗ 説明が入れ替わっています。親クラスのメソッドを再定義するのがオーバーライド、同名・異引数のメソッドを定義するのがオーバーロードです。
B.オーバーライドもオーバーロードも、どちらも同一クラス内でのみ使用できる
✗ 誤りです。オーバーライドはサブクラスと親クラスの関係で使われるものであり、同一クラス内に限定されません。
C.オーバーライドは親クラスのメソッドをサブクラスで再定義することで、オーバーロードは同じクラス内で同名・異引数のメソッドを複数定義することである← 正解
✓ 正解です。オーバーライドは継承関係でのメソッド再定義、オーバーロードは同一クラス内での同名異引数メソッドの定義です。
D.オーバーライドは戻り値の型のみ変更することで、オーバーロードは引数の数のみ変更することである
✗ 誤りです。オーバーライドは戻り値だけを変えるものではなく、メソッドシグネチャ全体を継承しつつ処理を再定義します。

Oracle Certified Java Programmer, Bronze SE の問題一覧