Technology

[ Java]引数とはなぜ必要なのか

引数とはなぜ必要なのかについて整理。


まずはメソッドの役割について整理


そもそもメソッドとは、やって欲しいいくつかの処理をまとめたもの。

例えばメソッドの中に 以下の式を設定する。

  • x = 1
  • y = 5
  • x+y



すると、メソッドの中では、6と計算してくれる。

もしこの答え6をどこかへ出力した時は、この答え6を「戻り値」と呼んだ。



戻り値についてはこちらで別途整理した。


引数がないと困ることは?

引数がないと、どこでも使いまわせるメソッドが作りにくい。

プログラム上で足し算をしてくれるメソッドを複数の場所で使いたいとする。

Aの場所では20と50を足したいかもしれないし、Bの場所では8と20を足したいかもしれない。

その時に、「5と1を計算して戻り値を返してくれるメソッド」は使い回せるだろうか。

「5と1を計算して戻り値を返してくれるメソッド」は見ての通り、5と1しか足してくれない。

だから使い回しても、もちろん5と1しか足してくれないし、戻り値は6しか返ってこない。


引数によってより使いまわしやすいメソッドが出来上がる。

そんな時に引数が出番となる。

引数を使うと、メソッドの外から好きな数字を入れることができるようになる。

xに1、yに5も入れられるし、xに20、yに50も入れられる。

ここで戻り値として出力を返す機能もつければ、「xとyを計算して戻り値を返してくれるメソッド」となり、もっと使い回しがよくなる。



メソッドは使い回しができるのがメリット

メソッドは、とにかく再利用できるのがメリット。

引数と戻り値を使うことによって、よりどこでも使いまわせるメソッドが作れる。

メソッドのメリットは別途ここでもまとめた。


結局はメソッドをどう作りたいか

結局はどのようなメソッドを作りたいかにもよる。

もし目的が、「5と1を計算して戻り値を返してくれるメソッド」の作成だったら引数は必要ないかもしれない。

もし目的が、「xとyを計算して戻り値を返してくれるメソッド」の作成だったら引数は必要だ。

タイトルに「引数はなぜ必要か」と書いてしまったが、ようするに、「なぜ必要か?」と考えるのではなく、「このメソッドを作りたいから引数を使う」という考えが最初になくてはいけない。

-Technology