Javaのメソッドの使い方完全ガイド!初心者でもわかるメソッド名、引数、戻り値、staticの基本
生徒
「Javaで同じような処理を何度も書かずに簡単に実行できる方法ってありますか?」
先生
「良い質問ですね!そのようなときに使えるのがメソッドです。メソッドは処理をまとめて、必要なときに呼び出して使える機能です。これから詳しく説明していきますね。」
生徒
「メソッドの作り方や使い方を教えてください!」
先生
「もちろんです。メソッドの基本的な構成から、引数や戻り値、staticメソッドについても順番に解説していきますね!」
1. Javaのメソッドとは?
Javaにおけるメソッドは、特定の処理を実行するためにプログラム内で定義された一連のステートメントの集合です。メソッドを使うことで、同じ処理を何度も書かずに再利用することができ、コードの整理や保守性が向上します。
2. メソッド名の付け方
メソッド名は、そのメソッドが何をするのかをわかりやすく表現する名前を付けることが重要です。たとえば、数値を表示するメソッドならprintNumber、合計を計算するならcalculateTotalのようにします。名前を見ただけで処理内容がわかるように工夫することで、コードの可読性が高まります。
3. 引数の使い方(引数あり、引数なし、複数引数)
引数とは、メソッドを呼び出すときに渡すデータのことです。引数を設定することで、メソッドに柔軟性を持たせることができます。引数がない場合は、メソッド内で固定された処理を行います。
たとえば、引数なしのメソッドは次のように定義します。
public class NoArgsMethod {
public static void main(String[] args) {
greet();
}
public static void greet() {
System.out.println("こんにちは、Javaプログラミング!");
}
}
次に、引数ありのメソッドの例を見てみましょう。
public class WithArgsMethod {
public static void main(String[] args) {
printNumber(5);
}
public static void printNumber(int number) {
System.out.println("渡された数値は: " + number);
}
}
さらに、複数の引数を持つメソッドを作成することも可能です。
public class MultipleArgsMethod {
public static void main(String[] args) {
int sum = add(3, 7);
System.out.println("合計は: " + sum);
}
public static int add(int a, int b) {
return a + b;
}
}
この例では、addメソッドが2つの引数aとbを受け取り、その合計を計算して返します。
4. 戻り値の使い方(戻り値あり、戻り値なし、void、return、複数の戻り値)
戻り値とは、メソッドが処理を終えた後に返すデータのことです。戻り値がない場合、メソッドはvoidとして定義されます。
次の例は、戻り値がない(void)メソッドです。
public class VoidMethod {
public static void main(String[] args) {
displayMessage();
}
public static void displayMessage() {
System.out.println("これは戻り値のないメソッドです。");
}
}
一方、戻り値のあるメソッドはreturn文を使ってデータを返します。
public class ReturnMethod {
public static void main(String[] args) {
int result = multiply(4, 5);
System.out.println("掛け算の結果: " + result);
}
public static int multiply(int a, int b) {
return a * b;
}
}
Javaでは基本的に1つの戻り値しか返せませんが、オブジェクトを使うことで複数の値をまとめて返すことが可能です。
public class MultiReturn {
public static void main(String[] args) {
int[] results = calculate(10, 3);
System.out.println("商: " + results[0] + ", 余り: " + results[1]);
}
public static int[] calculate(int dividend, int divisor) {
int quotient = dividend / divisor;
int remainder = dividend % divisor;
return new int[]{quotient, remainder};
}
}
5. mainメソッドから呼び出すstaticメソッドのポイント
Javaのmainメソッドから呼び出す場合、対象のメソッドはstaticとして宣言されている必要があります。staticメソッドは、クラスのインスタンスを作らずに直接呼び出すことができるメソッドです。
public class StaticExample {
public static void main(String[] args) {
displayGreeting();
}
public static void displayGreeting() {
System.out.println("ようこそ、Javaの世界へ!");
}
}
staticメソッドのメリットは、インスタンスを作成せずにメソッドを呼び出せるため、シンプルな処理に適している点です。
6. メソッド名の命名規則(キャメルケース・動詞で始める)
Javaのメソッド名は小文字で始めるローワーキャメルケースで書き、処理を端的に表す動詞+目的語の形にすると読みやすくなります。短すぎず長すぎないバランスを意識し、否定形や曖昧な単語は避けましょう。
calculateTotal/printNumber/findUserByIdのように「何をするか」を明確にする- 略語乱用や
doIt等の抽象名は避ける、ブール値はisやhasで始める
public class NamingSamples {
// 良い例
public static int calculateTotal(int[] prices) { /* ... */ return 0; }
public static boolean isValidEmail(String value) { /* ... */ return true; }
public static void printNumber(int n) { System.out.println(n); }
// 悪い例(何をするか不明、規則に反する)
public static int c(int[] p){ return 0; } // 意味不明
public static boolean CHECK(String v){ return true; } // 大文字始まり
public static void doIt(int x){ /* ... */ } // 目的が分からない
}
7. 引数の基本(型・順序・オーバーロード・可変長引数)
引数は「型」「名前」「順序」でシグネチャが決まります。用途ごとにオーバーロードを用意すると呼び出しが直感的になります。要素数が不定なときは可変長引数(...)を使うと便利です。
public class ArgBasics {
// 1) 型と順序がシグネチャを決める
public static String formatPrice(int amount, String currency) { /* ... */ return ""; }
// public static String formatPrice(String currency, int amount) { } // ← 順序が違えば別メソッド
// 2) オーバーロード(引数の数や型が違う)
public static void printNumber(int n) { System.out.println(n); }
public static void printNumber(double n) { System.out.println(n); }
// 3) 可変長引数(0個以上を受け取る)
public static int sum(int... values) {
int total = 0;
for (int v : values) total += v;
return total;
}
public static void main(String[] args) {
printNumber(10); // int版
printNumber(3.14); // double版
System.out.println(sum()); // 0
System.out.println(sum(1,2,3,4,5)); // 15
}
}
まとめ
本記事では、Javaのメソッドについて基本から応用までを解説しました。メソッドを活用することで、コードの再利用性が向上し、プログラム全体の構造が明確になります。特に、メソッド名の命名規則や引数の使い方、戻り値の取り扱い、staticメソッドの役割について具体例を挙げながら説明しました。これらの知識を身につければ、メソッドを使った効率的なコーディングが可能になります。
また、Javaではメソッドの引数や戻り値を通じてデータをやり取りできるため、柔軟なプログラム設計が可能です。戻り値のないvoidメソッドとreturnを使った戻り値のあるメソッドの違いを理解し、それぞれ適切な場面で活用しましょう。
public class MethodRecap {
public static void main(String[] args) {
greet();
int result = add(10, 20);
System.out.println("合計: " + result);
String message = generateMessage("メソッドを学習中");
System.out.println(message);
}
public static void greet() {
System.out.println("こんにちは!メソッドの復習です。");
}
public static int add(int a, int b) {
return a + b;
}
public static String generateMessage(String info) {
return "メッセージ: " + info;
}
}
上記のコードは、引数や戻り値を組み合わせたメソッドの例です。これを実行して、引数の受け渡しや戻り値の処理を体験してみてください。繰り返し練習することで、メソッドの使い方に慣れることができます。
生徒
「先生、メソッドを使うと同じ処理を何度も書かなくて済むので便利ですね!」
先生
「その通りです。特に、複雑なプログラムではメソッドを使い分けることで、コードが簡潔になり保守性が向上します。」
生徒
「引数や戻り値を使えば、メソッドがもっと便利に使えることがわかりました。」
先生
「そうですね。引数を使えばデータを渡せますし、戻り値を使えば処理結果を受け取ることができます。特にreturn文はよく使いますから覚えておきましょう。」
生徒
「次はどんなメソッドを作ってみればいいですか?」
先生
「簡単な計算をするメソッドや、文字列を操作するメソッドを作ってみるといいですね。それらを組み合わせれば、もっと実用的なプログラムが作れるようになりますよ。」
生徒
「わかりました!早速チャレンジしてみます!」