皆さんこんにちは。
Numataです。
今回は、メソッドの基本的な概念について解説します。
メソッドが出てきてナンノコッチャな方は必見です。
それでは参りましょう!
もくじ
メソッドはプログラム上の部品です。(ファミレスの店員さんです)
皆さん初めてメソッドが出てきたとき、どのような印象を持ったでしょうか。
私が持った印象は、”部品”です。きっと皆さん色々なイメージを持ったことでしょう。
今回の記事では、メソッドを「ファミレスの店員さん」として説明します。
ファミレスの店員さんと、メソッドの動きは良く似ています。
この記事を読めば、きっとメソッドの理解ができ、
メソッドが店員さんに見えてくることでしょう!
メソッドを呼ぶと、処理を行ってくれます
メソッドの呼び出しとはいったい何でしょう。
以下例文です。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
public class Sample { public static void main(String[] args) { //取り皿を持ってきてほしい torizara(3); //注文したい order("タコライス"); } //取り皿を運ぶメソッド。引数で必要な枚数を受け取り、戻り値として取り皿を返す。 public static int torizara(int num) { int dish = num; System.out.println(num + "枚の取り皿をお持ちしました。"); return dish; } //注文を受けるメソッド。引数でメニューを受け取り確認する。 public static void order(String menu) { System.out.println("ご注文は" + menu + "でよろしいでしょうか?"); } } |
4行目でtorizaraメソッドが呼ばれています。
torizaraメソッドでは、
引数(メソッド名の隣の()の中)として必要なお皿の枚数を受け取り、
必要枚数分のdishを戻り値として返しています。
6行目ではorderメソッドが呼ばれています。
orderメソッドでは、
引数としてメニュー名を受け取り、
注文の確認をしてくれます。
このように、メソッドを呼ぶと
それぞれのメソッドが持っている処理を行ってくれます。
ファミレスの店員さんになにかしら注文をすると、
その注文に応じて処理を行ってくれますよね。
![](https://3.bp.blogspot.com/-F9x7q3GW2WA/VdLry96qQTI/AAAAAAAAwxs/t5EKhD_1mu4/s800/menu_tenin_yobu.png)
取り皿ください!
タコライスお願いします!
このようにメソッドを呼ぶと、そのメソッドが持っている処理を行ってくれます!
メソッドを呼び出すと、処理がメソッドに移ります
メソッドを呼ぶとメソッドが持っている処理を行ってくれることがわかりました。
では処理を行っている間、プログラムはどうやって動いているでしょう?
答えは簡単。「処理が終わるのを待っている」のです。
レストランでも、注文したら到着するのを待ちますよね。
プログラムでも同じで、メソッドを呼び出したら、
いったんメソッドに処理が移り、終わったら戻り値とともに
呼び元に処理の結果が帰ってきます。
はい、出てきました。戻り値。(returnのこと)
torizaraメソッドでもでてきましたね。
戻り値はメソッドの呼び元に値を返します。
torizaraメソッドでいうと、4行目です。
メソッドの戻り値は呼び元に値を返す これは超重要です!
ファミレスの店員さんは、お客様に「取り皿が3枚欲しい」
と言われたら、お客様の元に取り皿を渡しますよね。
このように、メソッドに戻り値が設定されている場合は、
呼び元に値を返します!
メソッドを上手く使って処理分けができるようになりましょう
メソッドの動き、使い方はお分かりいただけたでしょうか?
メソッドをうまく使うと処理を分けることができます。
おそらくこれまで何行にもわたる長い処理を書いたことがあると思います。
その処理をメソッドに分けられれば、見やすくわかりやすい
プログラム作成をすることができます。
メソッドの動きを十分に理解できたら、ぜひ処理をメソッド分けすることに
チャレンジしてみてください!
コメント