カテゴリ: Javaの基本 更新日: 2026/01/19

Java の main メソッドとは?プログラムの入り口を理解しよう

058
Java の main メソッドとは?プログラムの入り口を理解しよう

新人と先輩の会話形式で理解しよう

新人

「Javaのプログラムを書くときに、必ず main メソッドが必要って聞きました。どういうものなんですか?」

先輩

「Javaのプログラムは、main メソッドを持っているクラスから実行されるんだよ。言い換えると、Javaのプログラムが動くためのスタート地点なんだ。」

新人

「なるほど。じゃあ、main メソッドがないとプログラムは動かないんですね?」

先輩

「そのとおり!それじゃあ、main メソッドの基本を学んでいこう!」

1. Javaの main メソッドとは?(プログラムの開始点)

1. Javaの main メソッドとは?(プログラムの開始点)
1. Javaの main メソッドとは?(プログラムの開始点)

Javaの main メソッドとは、プログラムが最初に実行される部分のことです。Javaのプログラムは、main メソッドがなければ動作しません。

以下が、Javaの基本的な main メソッドの形です。


public class MainExample {
    public static void main(String[] args) {
        System.out.println("Javaプログラムが動きました!");
    }
}

このプログラムを実行すると、画面に以下のように表示されます。


Javaプログラムが動きました!

このように、Javaのプログラムは main メソッドから実行が始まります。

2. なぜ main メソッドが必要なのか?(プログラムの流れ)

2. なぜ main メソッドが必要なのか?(プログラムの流れ)
2. なぜ main メソッドが必要なのか?(プログラムの流れ)

Javaのプログラムは、基本的にクラスの中に書かれます。しかし、クラスだけではプログラムは動作しません。Javaは、プログラムを開始する場所を知るために、決まった形の main メソッドを探します。

main メソッドの書き方には決まりがあります:

  • 必ずpublic static void main(String[] args)という形で書く
  • クラスの中に定義する
  • プログラムの入り口として、main メソッドから実行が始まる

例えば、以下のコードは main メソッドがないため、実行することができません。


public class NoMain {
    public void sayHello() {
        System.out.println("こんにちは!");
    }
}

このコードを実行しようとすると、以下のエラーが発生します。


エラー: メイン・メソッドが見つかりません。

このように、Javaのプログラムは main メソッドを必ず探すので、正しい形で定義する必要があります。

3. main メソッドの基本構文(書き方とルール)

3. main メソッドの基本構文(書き方とルール)
3. main メソッドの基本構文(書き方とルール)

Javaの main メソッドには、正しい書き方とルールがあります。以下の基本構文を理解しましょう。


public class MainExample {
    public static void main(String[] args) {
        System.out.println("main メソッドが動きました!");
    }
}

このコードの各部分には、次のような意味があります。

  • public - どこからでもアクセスできるようにするための修飾子。
  • static - インスタンスを作成せずにメソッドを呼び出すために使う。
  • void - メソッドが値を返さないことを示す。
  • main - Javaのプログラムが最初に実行するメソッド。
  • (String[] args) - コマンドライン引数を受け取るための変数。

このように、main メソッドの書き方は決まっているため、正しく書かないとエラーになります。

4. main メソッドの動作を確認しよう(実際にコードを書いて実行)

4. main メソッドの動作を確認しよう(実際にコードを書いて実行)
4. main メソッドの動作を確認しよう(実際にコードを書いて実行)

では、実際に main メソッドを使ってプログラムを実行してみましょう。

1. プログラムを作成する

Pleiadesを開き、新しい Java クラスを作成してください。クラス名は MainTest にしましょう。

2. コードを書いて実行する

次のように main メソッドを記述します。


public class MainTest {
    public static void main(String[] args) {
        System.out.println("Javaのプログラムを実行しています!");
    }
}

3. プログラムを実行する

  1. Pleiadesの「実行」ボタンをクリック。
  2. コンソール画面に以下の出力が表示されることを確認。

Javaのプログラムを実行しています!

このように、main メソッドが実行されることで、プログラムの出力が確認できます。

5. main メソッドの引数(String[] args とは?)

5. main メソッドの引数(String[] args とは?)
5. main メソッドの引数(String[] args とは?)

main メソッドの引数 String[] args は、外部からデータを渡すために使います。

1. String[] args の基本

Javaのプログラムは、コマンドライン引数を受け取ることができます。たとえば、以下のコードを見てみましょう。


public class CommandLineExample {
    public static void main(String[] args) {
        System.out.println("引数: " + args[0]);
    }
}

2. 実行時に引数を渡す

Pleiadesでプログラムを実行する際に、引数を指定すると、その値がプログラム内で使われます。

  1. Pleiadesの「実行構成」から「引数」を選択。
  2. プログラム引数に Hello と入力し、「実行」ボタンをクリック。
  3. 以下の出力が表示される。

引数: Hello

このように、args を使うことで外部から値を渡すことができます。

6. main メソッドのカスタマイズ(main メソッド内で処理を追加)

6. main メソッドのカスタマイズ(main メソッド内で処理を追加)
6. main メソッドのカスタマイズ(main メソッド内で処理を追加)

main メソッドは、単にプログラムの開始地点であるだけでなく、さまざまな処理を実行できます。

1. 計算を行う

main メソッド内で数値の計算を行うことができます。


public class Calculator {
    public static void main(String[] args) {
        int a = 10;
        int b = 5;
        int sum = a + b;
        System.out.println("足し算の結果: " + sum);
    }
}

このコードを実行すると、以下のように出力されます。


足し算の結果: 15

2. 条件分岐を使う

main メソッド内で条件分岐を使用して、異なる処理を実行できます。


public class AgeCheck {
    public static void main(String[] args) {
        int age = 20;
        if (age >= 18) {
            System.out.println("あなたは大人です。");
        } else {
            System.out.println("あなたは未成年です。");
        }
    }
}

このプログラムでは、年齢に応じて異なるメッセージを出力します。

7. Javaプログラムの入り口を理解するためのポイント

7. Javaプログラムの入り口を理解するためのポイント
7. Javaプログラムの入り口を理解するためのポイント

Javaのプログラムの入り口である main メソッドを理解するためには、いくつかのポイントがあります。

1. main メソッドは必ず必要

Javaのプログラムは main メソッドがないと実行できません。必ず public static void main(String[] args) を正しく記述しましょう。

2. メソッドの中に処理を記述する

main メソッドの中にコードを書くことで、プログラムが実行されます。


public class Hello {
    public static void main(String[] args) {
        System.out.println("こんにちは、Java!");
    }
}

このコードを実行すると、コンソールに「こんにちは、Java!」と表示されます。

3. 引数を使うと柔軟なプログラムが作れる

コマンドライン引数を活用すると、ユーザーが入力した値をプログラムで処理することができます。


public class Greeting {
    public static void main(String[] args) {
        if (args.length > 0) {
            System.out.println("こんにちは、" + args[0] + "さん!");
        } else {
            System.out.println("名前が入力されていません。");
        }
    }
}

このプログラムは、実行時に名前を入力すると「こんにちは、〇〇さん!」と表示します。

まとめ

まとめ
まとめ

この記事では、Javaの main メソッドについて、プログラム初心者でも理解できるように、基本から具体例まで丁寧に解説してきました。main メソッドは、Javaプログラムにおける「入り口」であり、「どこから処理が始まるのか」を示す非常に重要な存在です。Javaを学ぶうえで、main メソッドの仕組みを正しく理解することは、すべての基礎になると言っても過言ではありません。

Javaでは、クラスの中に public static void main(String[] args) という決まった形のメソッドを定義することで、プログラムを実行できます。この形が少しでも崩れてしまうと、Javaは「どこから実行すればよいのか」を判断できず、エラーになってしまいます。そのため、main メソッドの構文は丸暗記に近い形で覚えておくことが、初心者にとっては大切なポイントです。

また、main メソッドがなぜ必要なのかという点についても学びました。Javaは複数のクラスやメソッドを持つプログラムを書けますが、その中で最初に動かす場所を明確にするために、main メソッドという共通ルールを採用しています。この仕組みのおかげで、Javaは大規模なプログラムでも安定して動作させることができます。

main メソッドの引数である String[] args についても理解を深めました。これは、プログラムの外部から値を受け取るための仕組みで、コマンドライン引数として使われます。初心者のうちは使う機会が少ないかもしれませんが、後々、柔軟なプログラムを作るために必ず役立つ知識です。

さらに、main メソッドの中では、画面への出力だけでなく、計算処理や条件分岐など、さまざまな処理を書けることも確認しました。Javaの学習は、まず main メソッドの中に簡単なコードを書いて動かし、その後メソッドやクラスを増やしていく流れが基本になります。今回学んだ内容は、今後のJava学習の土台として、何度も振り返ることになるでしょう。

main メソッドの基本を振り返るサンプルプログラム


public class MainSummarySample {
    public static void main(String[] args) {
        System.out.println("これはJavaプログラムの入り口です");
        System.out.println("mainメソッドから処理が始まります");
    }
}

このプログラムを実行すると、次のような結果が表示されます。


これはJavaプログラムの入り口です
mainメソッドから処理が始まります

このようなシンプルなコードでも、Javaプログラムとして正しく動作するのは、main メソッドが正しい形で定義されているからです。まずは、この基本形を確実に身につけることが、Java上達への近道になります。

先生と生徒の振り返り会話

生徒

「main メソッドが、Javaプログラムのスタート地点だという意味がよく分かりました。最初は呪文みたいに感じていましたが、理由を知ると納得できますね。」

先生

「それはとても良い理解です。Javaでは、この決まった入り口があるからこそ、どんなプログラムでも同じように実行できるんですよ。」

生徒

「引数の String[] args も、外から値を受け取るためのものだと分かって、少し応用ができそうだと感じました。」

先生

「その気づきは大切ですね。今は使わなくても、後で必ず役立つ知識になります。」

生徒

「まずは main メソッドの書き方をしっかり覚えて、いろいろなプログラムを書いてみたいです。」

先生

「その意気です。main メソッドを理解できた今が、Java学習の本当のスタートですよ。」

Javaをこれから始める人や、 オブジェクト指向の考え方を基礎から理解したい人には、 定番の入門書がこちらです。

スッキリわかるJava入門 第4版をAmazonで見る

※ Amazonアソシエイト・プログラムを利用しています

Javaの基本の一覧へ
新着記事
【AWS】CLIの基本的な使い方まとめ【初心者向けコマンド入門】
【AWS】CLIの基本的な使い方まとめ!初心者向けコマンド入門をやさしく解説
EC2のAMI(Amazon Machine Image)とは?作成・使用方法を解説
EC2のAMI(Amazon Machine Image)とは?作成・使用方法を初心者向けにやさしく解説
EC2のステータスチェック「1/2」「2/2」「3/3」とは?エラーの対処法
EC2のステータスチェック「1/2」「2/2」「3/3」とは?エラー原因と対処法を初心者向けに解説
EC2の起動テンプレートとは?使い方と自動化活用例を紹介
AWS EC2の起動テンプレートとは?初心者向けに使い方と自動化活用例を徹底解説!
人気記事
インスタンスタイプの料金比較と最適な選び方(最新2025年版)
AWSのインスタンスタイプの料金比較と最適な選び方【2025年最新版】
【AWS】VPCの料金体系まとめ!無料枠・通信費・各種サービスごとの料金を徹底解説
【AWS】VPCの料金体系まとめ!無料枠・通信費・各種サービスごとの料金を徹底解説
【AWS】VPCエンドポイントとは?種類・使い方・S3連携まで完全解説
【AWS】VPCエンドポイントとは?種類・使い方・S3連携まで完全解説
【AWS】s3 cpコマンド完全ガイド!基本・recursive・exclude/includeも解説
【AWS】s3 cpコマンド完全ガイド!基本・recursive・exclude/includeも解説