Javaのmainメソッドとは?書き方や使い方をわかりやすく解説

Javaのプログラムを始めると、最初に目にするのが「main
メソッド」です。
今回はJavaのmainメソッドとは何か、なぜ必要なのか、そしてその書き方や使い方を解説します。
この記事を読むことで、現場でも役立つJavaプログラミングの基礎がしっかり身につきます。
さらに、mainメソッドを深く理解することで、将来的に複雑なプログラムにも挑戦できる力が身につきますよ。
Javaのmainメソッドとは?
Javaプログラムを動かすときに、最初に実行される特別なメソッドが「mainメソッド」です。
このメソッドがないと、Javaのプログラムは動きません。
つまり、mainメソッドはJavaプログラムの「スタートボタン」なのです。
mainメソッドの役割
mainメソッドは、Javaアプリケーションの”入り口”です。
パソコンでいうと電源ボタンのようなもので、ここをスタート地点にしてプログラムが動き始めます。
mainメソッドの中に書いた命令は、上から順番に1つずつ実行されていきます。
mainメソッドは、プログラムの命令をどうやって動かすかを決める、重要な場所です。
Javaでのmainメソッドの書き方
public class HelloWorld {
public static void main(String[] args) {
System.out.println("こんにちは、Java!");
}
}
このコードは「Javaで最初に動かす基本の形」です。この形を覚えておけば、どんなプログラムでも最初の一歩をスムーズに踏み出せます。
サンプルコードでmainメソッドを解説
サンプルコードを用いて、mainメソッドを解説しますね。
コードの意味を1行ずつ見ていこう
public class HelloWorld {
→ 「HelloWorld」というクラス(部屋の名前のようなもの)を作るよ、という宣言です。クラスとは、Javaで作るプログラムの部品のようなもので、1つのクラスが1つのプログラムのかたまりになります。
public static void main(String[] args) {
→ これがmainメソッドです。Javaはこの行からプログラムを始めます。ここから命令が1つずつ順番に実行されます。
public
: 他の場所からも使えるようにする合言葉static
: 特別な準備をしなくても使えるようにするマークvoid
: 「何も返さないよ」という意味(今は気にしなくてOK)String[] args
: プログラムを動かすときに情報を渡せる箱。詳しくは後ほど解説します。
System.out.println("こんにちは、Java!");
→ 画面に「こんにちは、Java!」と表示します。これはJavaでよく使われる表示の命令です。
}
}
→ 波かっこ({}
)で囲っている中がmainメソッドの中身です。命令はこの中に書きます。
mainメソッドを書くときのポイント
ポイントを解説していきますね。
クラス名とファイル名を合わせよう
Javaでは、クラス名とファイル名は同じにする必要があります。たとえば、HelloWorld
クラスを書いたら、ファイル名はHelloWorld.java
にします。これを間違えるとエラーになるので注意しましょう。
大文字・小文字に注意!
Javaは大文字と小文字を区別します。Main
とmain
はまったく別のものです。mainメソッドを正しく動かすためには、main
と小文字で書くことが大事です。
コメントを使って分かりやすくしよう
コードの中にコメントを書くことで、何をしているのかを説明できます。
// これはmainメソッドです
コメントはプログラムには影響しませんが、後から見たときの助けになります。
実際にmainメソッドを使ってみよう
実際にmainメソッドを使ってみましょう。
例1:計算してみよう
public class Calculator {
public static void main(String[] args) {
int a = 5;
int b = 3;
int sum = a + b;
System.out.println("合計は: " + sum);
}
}
このコードでは、変数a
とb
を足して、その結果を表示しています。mainメソッドの中に計算の処理が入っているのが分かります。
変数を使って、数を記録し、計算し、結果を表示する。この一連の流れがmainメソッドの中にあります。
例2:メッセージを表示
public class Message {
public static void main(String[] args) {
String name = "シン";
System.out.println("こんにちは、" + name + "さん!");
}
}
変数name
に名前を入れて、それを使って挨拶のメッセージを表示しています。
このように、mainメソッドの中で変数を使うと、より柔軟な表示ができます。
例3:if文を使ってみよう
public class CheckAge {
public static void main(String[] args) {
int age = 18;
if (age >= 18) {
System.out.println("大人です。");
} else {
System.out.println("未成年です。");
}
}
}
mainメソッドの中で条件分岐(if文)を使うことで、状況に応じて動きを変えることができます。
よくあるmainメソッドの間違い
よくあるmainメソッドの間違いについてもみていきましょう。
書き方を間違える
書き方を間違える例です。
main
をMain
と書く → 動かないString[] args
を忘れる → エラーになるpublic static void
の順番を変える → コンパイルエラー
中かっこ{}
の数が合わない
開いたら必ず閉じる。これが鉄則です。特に複雑なコードになったときは、中かっこの対応に注意しましょう。
クラス名とファイル名が違う
Javaでは、クラス名とファイル名が一致しないとエラーになります。初心者がよくつまずくポイントなので注意しましょう。
mainメソッドがないとどうなる?
Javaプログラムを実行しようとしても、mainメソッドがなければ「スタート地点がない」と言われて、エラーになります。
Javaの実行環境はmainメソッドを探して、そこから実行を始めるため、mainメソッドがなければどこから実行していいか分からなくなってしまうのです。
演習問題にチャレンジ!
演習問題を用意しました。ぜひアウトプットして知識を定着させましょう。
問題1:Hello, World!を表示しよう
「Hello, World!」と表示するプログラムを書いてみよう。
解答例:
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, World!");
}
}
問題2:数字を足そう
数字7
と8
を足して表示するプログラムを書こう。
解答例:
public class AddNumbers {
public static void main(String[] args) {
int x = 7;
int y = 8;
System.out.println("合計は: " + (x + y));
}
}
問題3:自分の名前を表示しよう
あなたの名前を使って挨拶するプログラムを書いてみよう。
解答例:
public class Greeting {
public static void main(String[] args) {
String name = "タロウ";
System.out.println("こんにちは、" + name + "さん!");
}
}
よくある質問(FAQ)
以下、よくある質問です。
Q1. mainメソッドは1つのクラスに1つだけ必要ですか?
A. 必ずしも1つだけではありませんが、実行時に動くのは1つのmainメソッドです。複数のクラスにmainメソッドを持たせることもできますが、どれを動かすかは実行時に指定します。
Q2. mainメソッド以外にもメソッドは作れますか?
A. はい、main以外にも自由にメソッドを作れます。複雑な処理はmainの外に分けて、mainメソッドから呼び出すのが一般的です。
Q3. String[] args
ってなんのためにあるの?
A. コマンドラインから値を渡すための仕組みです。たとえば、プログラムに数値を渡したいときなどに使えます。初心者は最初は気にしなくて大丈夫ですが、慣れてきたら活用しましょう。
Q4. mainメソッドの中で他のクラスを使えますか?
A. はい、他のクラスを作ってmainメソッドから呼び出すことができます。これにより、コードの再利用や整理がしやすくなります。
Q5. Java以外の言語にもmainメソッドってあるの?
A. CやC++、C#などにもmainメソッドがあります。これらの言語でも、mainメソッドはプログラムの「入り口」として使われており、基本的な役割はJavaと似ています。
まとめ
Javaのmainメソッドは、プログラムのスタート地点として欠かせない存在です。書き方にルールはあるものの、意味を理解すれば難しくありません。
この記事で紹介したサンプルコードや演習問題を通じて、実際に手を動かしてみましょう。
さらに、mainメソッドを学ぶことで、Javaのクラス設計や他のメソッドとの連携、条件分岐や繰り返しなどの基本的な構文の理解にもつながります。
これからJavaを学んでいく人にとって、mainメソッドの理解は必須です。少しずつ練習を積んで、徐々に身につけていきましょう。