【Java初心者】メソッドの使い方と利点

Javaプログラミングにおけるメソッドの基本的な使い方メリットについて説明していきます。
イラストやソースコードも載せてあるので、ぜひメソッドについて理解を深めていってください!

メソッドとは

メソッドとは、複数の命令や処理をひとまとまりにした小さなかたまりです。

Javaプログラミングでは、プログラムを実行するとmainメソッドが
内部的にJavaに呼び出される形で実行されます。
そのため、mainメソッドの中に全てのコードを記載してプログラムを完成させることは可能です。

数十行のプログラムであればmainメソッド内に全て書いてしまっても問題ありませんが、
大きなプログラムを完成させるとなるとソースコードが何千〜何万行になってしまうことは珍しくありません。

エラーが起きたり、ソースコードの修正を行う際、
何万行もあるコードを最初から見直していたのではキリがありません。
そこで、プログラミングでは機能ごとにソースコードを分割して利用できるのです。
その仕組みがメソッドです。

メソッドとは、複数のソースコードをひとまとまりにして1つの処理とみなして名前をつけたものです。
大雑把に言うと、いくつかの似たもの同士をくっつけてひとまとまりのグループにして
わかりやすくするイメージです。

メソッド分割のイメージ

厳密には処理をひとまとまりにするため少し違いますが、上の図のようなイメージです。
メソッドに名前をつけて、名前に関連した処理をまとめることで
メソッドの呼び出しや利用をスムーズに行うことができます。

メソッドのメリット

メソッドはプログラムを書く上で基本的な知識ではありますが、非常に重要な項目です。
メソッドを使うことによって個人開発でもグループ開発でも感じる
大きなメリットを説明していきます。

プログラム全体が見やすくなる

ソースコードをメソッドごとに分割することにより、
プログラム全体が格段に見やすくスッキリします。
うまく機能ごとにメソッドに分割することで
mainメソッドでの処理をメソッドを呼び出すだけにすることもできます。

機能に沿ったメソッド名をつけていれば特定の機能を探したい場合に
すぐに見つけ出すことができその後の作業もスムーズに行うことができます。

メンテナンスがしやすい

エラー発生時には、機能ごとにメソッドを分割していることによって
早めに問題箇所を発見することが可能になります
発見が早くなることによって修正も簡単になります。

メンテナンスがしやすい

機能ごとに分かれていることによって、
別の機能間で同じ変数を利用することが少なくなるため、
一部のメソッドの内容を変更しても他のメソッドの動作に影響を及ぼしにくいです。

そのため、部分的にコードを修正したりするメンテナンスがしやすくなります。

1つの処理を繰り返し利用できる

メソッドを利用すると1つの処理を1度書けば、
あとはメソッドを呼び出すだけなので何度も繰り返し利用することができます

1つと複数のメソッドの違い

ソースコード全体が少ない場合は実感しにくい部分かもしれませんが、
例えば処理Aが何十行もあり、それを何回も繰り返し使う場合には
何度も同じことを書くのは非常に手間になります。

繰り返し利用する処理を1つのメソッドにまとめれば、
1行のメソッド呼び出し処理文を書くだけでいつでもどこでも何度でも利用できます。

メソッド作成

実際のメソッドの作成方法について説明していきます。
メソッドは、この記事を読んでいる人はすでに知っているかもしれませんが
以下のMainメソッドと同じように書きます。

public static void main(String[] args){
処理
}

このメソッドの構成は、以下の通りとなっております。
[public static]に関してはまた別の記事でご紹介いたしますので割愛いたします。

引数についてはこちらをご覧ください。
【Java初心者】引数の仕組みと使い方

戻り値についてはこちらをご覧ください。
【Java初心者】戻り値の仕組みと使い方

public static 戻り値の型 メソッド名(引数の型 引数名){
処理
}

メソッドの構成は上記のようになっていて、mainメソッドの外に記述することができます。
メソッド名には処理の内容がわかりやすい名前をつけましょう。

計算の処理をまとめたい場合には以下の[calculationProcess]のように
処理の内容をそのまま命名をするとわかりやすいでしょう。
メソッド名は小文字で始まり、複数単語を利用する場合には繋ぎ目を大文字にしましょう。

public static void main(String[] args){
処理
}
public static calculationProcess (){
計算処理
}

メソッド利用・呼び出し

メソッドを作成できたら、メソッドの呼び出しを行います。
mainメソッド以外のメソッドはプログラム内で外部から呼び出されなければ実行されない!
というのがメソッドを扱う上で重要になってきます。

つまり、ソースコードを部品ごとに分割したとしてもどこからも呼び出されなければ、
そのコードは存在しないものと同じことになってしまいます。

メソッドの呼び出し方は非常に簡単で、「メソッド名()を他のメソッド内で記載するだけです。
メソッドを呼び出す際には必ずメソッド名の後ろに()をつける必要があることに注意しましょう。
()は引数を入れるかっこで、詳細については引数の仕組みと使い方の記事で紹介しています。

public static void main(String[] args){
処理A
calculation();
処理B
calculation();
}

public static calculation (){
int a = 2;
int b = 5;
System.out.print(a+b);
}

上記のコードを実行するとMainメソッドが実行されるため、
処理A⇨calculation()⇨処理B⇨calculation()の順番で処理が行われます。

また、以下のように呼び出されたメソッドの中でメソッドを呼び出すことも可能です。
メソッドにもさまざまな活用法がありますのでご自身でも色々挑戦してみてください!

public static void main(String[] args){
 processA();
}

public static processA (){
 processB();
}

public static processB (){
 処理;
}

まとめ

メソッドとは、いくつかの処理を一つにまとめて入れた箱みたいな存在です。


うまく活用することで多くのメリットを享受することができ、
綺麗にメソッドを分割することで同じアプリケーション開発でも
より正確でバグのない良い製品ができるでしょう!

メソッドを適切な機能ごとに分割して活用できる能力は、
今後IT企業でエンジニアと働いていく方には必要不可欠なスキルなので、
ぜひ使いこなせるようになってください!

以上、参考になった方は他の記事もぜひご覧になってください!