Java 17 Silver ラボ

学習の画面へ

Java 17 Silver ・ 4. クラスの定義とインスタンスの使用

メソッドのオーバーロード の練習問題と解説

Java 17 Silver ラボ の「4. クラスの定義とインスタンスの使用 › メソッドのオーバーロード」の問題 7 問を載せています。問題を開くと、正解と選択肢ごとの解説が読めます。

メソッドのオーバーロード について

同じ名前で引数の違うメソッドを並べたとき、呼び出しでどれが選ばれるかを答える分類です。定義そのものが正しいかの判断も含みます。

オーバーロードになるのは引数の型・数・順番が違う場合で、戻り値の型だけが違うメソッドはコンパイルエラーです。どれが選ばれるかは、まず型がそのまま合うもの、次に広い型への変換 (byte → int など)、その次にボクシング・アンボクシング、最後に可変長引数の順に探します。

null を渡したとき、String と Object の候補があれば、より具体的な String が選ばれます。String と Integer のように親子関係の無い候補が 2 つあると、どちらとも決まらずコンパイルエラーです。Integer を渡すと、アンボクシングして int を選ぶより先に Object を受け取る候補が選ばれる点も出題されます。

問題 (7 問)

「メソッドのオーバーロード」をこのサイトで解く

広告