Javaでメソッドの定義について

以下のようなコードがあります。

class Sample {
public static void main(String[] args){
methodA("Hello");
}
}

このコードが実行できるようなmethodAは、

static void methodA(String message){
System.out.println(message);
}

らしいのですが。
一体、どういうことなのか、問題も解答もさっぱりでして…
コードが実行できるメソッドの定義?について、解説いただけないでしょうか。
よろしくお願い致します。

回答の条件
  • 1人10回まで
  • 登録:
  • 終了:2019/06/12 20:45:16
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:a-kuma3 No.1

回答回数4971ベストアンサー獲得回数2153

ポイント500pt

この質問は、メソッドのオーバーロードについての質問です。
「オーバーロード」とは、同じメソッド名でも、その引数(パラメータ)が違うと別のメソッドとして扱われる、ということです。

回答群のうち、(ア) と (エ) は、呼び出している側とパラメータの数や型が違うので、呼び出せません。
引数の数と型が同じ (イ) と (ウ) の選択になるのですが、(ウ) の方は、メソッドの戻り値が String になっていますから、メソッドに return 文がないとコンパイルエラーになります。

というわけで、(イ) が正解になります。

id:moon-fondu

ありがとうございます、理解できました<m(__)m>
戻り値とreturn文、あと(エ)のように呼び出す引数がコンマで区切られているのは初めて見た気がしますので…また学習したいと思います!

2019/06/12 20:44:59

その他の回答0件)

id:a-kuma3 No.1

回答回数4971ベストアンサー獲得回数2153ここでベストアンサー

ポイント500pt

この質問は、メソッドのオーバーロードについての質問です。
「オーバーロード」とは、同じメソッド名でも、その引数(パラメータ)が違うと別のメソッドとして扱われる、ということです。

回答群のうち、(ア) と (エ) は、呼び出している側とパラメータの数や型が違うので、呼び出せません。
引数の数と型が同じ (イ) と (ウ) の選択になるのですが、(ウ) の方は、メソッドの戻り値が String になっていますから、メソッドに return 文がないとコンパイルエラーになります。

というわけで、(イ) が正解になります。

id:moon-fondu

ありがとうございます、理解できました<m(__)m>
戻り値とreturn文、あと(エ)のように呼び出す引数がコンマで区切られているのは初めて見た気がしますので…また学習したいと思います!

2019/06/12 20:44:59

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません