Webサイト制作コースのお申し込みはこちら Webサイト制作コースのお申し込みはこちら

メソッドとは?

メソッドとは、複数の文をまとめて、それを1つの”処理”として名前を付けたものです。クラスがもっている機能を定義した、ひとかたまりの文章とも言えます。

メソッドを利用するメリット

メソッドを有効利用すると、以下のようなメリットがあります。

Javaのメソッド利用によりメリット
  • プログラム全体の見通しが良くなる
  • 機能単位に分かれているので、修正が簡単
  • 同じ処理を1つのメソッドにまとめると、作業効率が上がる

たとえば、以下のようにmainメソッドではメソッドの呼び出しだけ行い、別ファイルで分割したメソッドを定義しておけば、プログラム全体の見通しが良くなります。

  1. public class Main {
  2. public static void main(String[] args){
  3. calculate(); // 計算するメソッド
  4. check(); // 確認するメソッド
  5. print(); // 印刷するメソッド
  6. }
  7. }
  1. public static void calculate() {
  2. // 計算処理
  3. }
  4.  
  5. public static void check() {
  6. // 確認処理
  7. }
  8.  
  9. public static void print() {
  10. // 印刷処理
  11. }

また、処理が意図しないものであれば、メソッドが定義されているファイルだけを確認すれば良いため、管理も楽になるでしょう。

メソッドで一度定義すれば、同じ処理を何度も書く必要がなくなるので作業効率も上がります。

メソッドの定義方法

メソッドを作成することを、メソッドの定義と言います。メソッドを定義する時は、以下のように記述しましょう。

  1. public static[装飾子] 戻り値の型 メソッド名(引数リスト) {
  2. // メソッドが呼び出された時に実行される具体的な処理
  3. }

簡単なサンプルで具体的に書くと、以下のようになります。

  1. public static void hello() {
  2. System.out.println("Hello World!");
  3. }

メソッドの呼び出し方法

作成したメソッドを呼び出す時は、以下のように記述します。

  1. メソッド名(引数リスト);

先ほどの、helloメソッドを実際に呼び出す例を見てみましょう。

  1. public class Main {
  2. public static void main(String[] args) {
  3. hello();
  4. }
  5. public static void hello() {
  6. System.out.println("Hello World!");
  7. }
  8. }

実行結果↓

  1. Hello World!

「メソッドを利用するメリット」でもご紹介したように、別ファイルに定義されているメソッドも呼び出し可能です。

メソッドに引数を渡す方法

メソッドを呼び出す時に、呼び出し元から使いたい値を渡せます。この時に渡される値のことを「引数」と言います。

呼び出されたメソッドでは、渡された値を使って処理に使うことが可能。引数には、数値や文字列などが指定でき、値や型、引数の数を自由に決められます。

先ほどのhelloメソッドを、名前を渡して呼び出すプログラムに書き換えてみましょう。

  1. public class Main {
  2. public static void main(String[] args) {
  3. hello("Potepan");
  4. }
  5. public static void hello(String name) {
  6. System.out.println(name + " Hello World!");
  7. }
  8. }

実行結果↓

  1. Potepan Hello World!

メソッドに複数の引数を渡す方法

メソッドに複数の引数を渡す場合は、値をカンマ(,)で区切って書きます。

  1. メソッド名(引数1, 引数2, 引数3,・・・);

calculateメソッドに、2つの値を渡して掛け算をするプログラムを作ると、以下のようになります。

  1. public class Main {
  2. public static void main(String[] args) {
  3. calculate(25, 85);
  4. }
  5. public static void calculate(int x, int y) {
  6. int ans = x * y;
  7. System.out.println(x + "*" + y + "=" + ans + " です");
  8. }
  9. }

実行結果↓

  1. 25*85=2125 です

実引数と仮引数

一般的に、メソッドに渡す値、受け取る変数をともに「引数」と言います。この引数は厳密に言い分けると、渡す値を「実引数」、受け取る変数を「仮引数」と言うので覚えておきましょう。

メソッドの戻り値を使う方法

呼び出されたメソッドから、呼び出し元へ値を返すことを「値を戻す(返す)」と言い、この時戻される値を「戻り値」と呼びます。

値を戻す際は、以下の構文で記述しましょう。

  1. public static 戻り値の型 メソッド名(引数リスト・・・) {
  2. // メソッドが実行された時に動く処理
  3. return 戻り値;
  4. }

先ほどの、calculateメソッドを戻り値を使って書き換えると以下のようになります。

  1. public class Main {
  2. public static void main(String[] args) {
  3. int x = 25, y = 85;
  4. int ans = calculate(x, y);
  5. System.out.println(x + "*" + y + "=" + ans + " です");
  6. }
  7. public static int calculate(int x, int y) {
  8. return x * y;
  9. }
  10. }

実行結果↓

  1. 25*85=2125 です

メソッドのオーバーロードの利用

Javaで同じ名前のメソッドを定義することを「オーバーロード(多重継承)」と言います。

オーバーロードは、以下のように仮引数の型が異なっていたり、仮引数の個数が異なっている場合に利用可能です。

先ほどの、calculateメソッドを戻り値を使って書き換えると以下のようになります。

  1. public class Main {
  2. public static void main(String[] args) {
  3. System.out.println(calculate(25, 85));
  4. System.out.println(calculate(25.0, 85.0));
  5. System.out.println(calculate(25, 85, 17));
  6. }
  7. public static int calculate(int x, int y) {
  8. return x * y;
  9. }
  10.  
  11. public static double calculate(double x, double y) {
  12. return x * y;
  13. }
  14.  
  15. public static int calculate(int x, int y, int z) {
  16. return x * y * z;
  17. }
  18. }

実行結果↓

  1. 2125
  2. 2125.0
  3. 36125

オーバーライドとは別物

ポテパンダの一言メモ

似た言葉に「オーバーライド」がありますが、全く異なるものなので混同しないように注意です。

オーバーライドについて詳しく知りたい人は、以下の記事を参考にしてみてください。

【関連記事】

▶︎【Java】継承ってどう使えばいいの?基礎から徹底解説します【例あり】

まとめ

プログラムを組む上で、メソッドを使わないことはほとんどありません。必須の知識と言えます。

また、メソッドはコードを読みやすくしたり、修正や変更が簡単に済むなどメリットも豊富です。ぜひ、メソッドを覚えて使いこなしてください。

エンジニアになりたい人に選ばれるプログラミングスクール「ポテパンキャンプ 」

ポテパンキャンプは卒業生の多くがWebエンジニアとして活躍している実践型プログラミングスクールです。 1000名以上が受講しており、その多くが上場企業、ベンチャー企業のWebエンジニアとして活躍しています。

基礎的な学習だけで満足せず、実際にプログラミングを覚えて実践で使えるレベルまで学習したいという方に人気です。 プログラミングを学習し実践で使うには様々な要素が必要です。

それがマルっと詰まっているポテパンキャンプでプログラミングを学習してみませんか?

卒業生の多くがWebエンジニアとして活躍

卒業生の多くがWeb企業で活躍しております。
実践的なカリキュラムをこなしているからこそ現場でも戦力となっております。
活躍する卒業生のインタビューもございますので是非御覧ください。

経験豊富なエンジニア陣が直接指導

実践的なカリキュラムと経験豊富なエンジニアが直接指導にあたります。
有名企業のエンジニアも多数在籍し品質高いWebアプリケーションを作れるようサポートします。

満足度高くコスパの高いプログラミングスクール「ポテパンキャンプ」

運営する株式会社ポテパンは10,000人以上のエンジニアのキャリアサポートを行ってきております。
そのノウハウを活かして実践的なカリキュラムを随時アップデートしております。

代表の宮崎もプログラミングを覚えサイトを作りポテパンを創業しました。
本気でプログラミングを身につけたいという方にコスパ良く受講していただきたいと思っておりますので、気になる方はぜひスクール詳細をのぞいてくださいませ。