LoginSignup
6
9

More than 3 years have passed since last update.

Javaのエントリーポイントについて

Last updated at Posted at 2020-07-08

エントリーポイントとは

プログラムの実行を開始する場所のことで、一番最初に呼ばれるメソッドになります。メソッドは、メソッドからメソッドを呼び、さらにその次のメソッドを呼ぶ、という流れで実行されていきます。その中で一番最初に呼ばれるメソッドをエントリーポイント(開始点)と言います。
Javaではmainメソッドがプログラム全体のエントリーポイントに設定されます(C、C++、Objective-C等の多言語でもmainメソッドがエントリーポイントとして使われます)。
なのでJavaでの エントリーポイント = mainメソッドと覚えておけば良さそうです。
プログラム全体のエントリーポイントとなる場所を含むルーチンをメインルーチンといい、mainメソッドを含むクラスがメインルーチンということになります。

mainメソッドの5つの条件

Javaではmainメソッドで使う修飾子や名前、引数などのルールが厳密に決められています。

1.アクセス修飾子はpublic
2.staticメソッド
3.メソッドの戻り値はvoid
4.メソッド名はmain(小文字)
5.メソッドの引数はStringの配列(またはStringの可変長引数1)のみ

また、Javaのメソッドは必ず何かのクラスに属してないといけないという決まりがあります。

以上の条件を踏まえた一般的なmainメソッドは以下のようになります。

main.java
class Main {

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

ちなみに、よくある引数「args」は、引数を表すargumentsを省略したものになります。

また、次のように上記の5つの条件を外れたものは、mainメソッドとしては認識されません

・引数にString型の配列を渡してない
・String型の配列以外に別の引数を渡している
・メソッド名がmainじゃない
・publicやstatic、voidを使ってない

参考サイト:

以下のサイトがとても勉強になりました。mainメソッドについてさらに詳しい解説もあります。
Javaの実行に欠かせないmainメソッド、その仕組みからしっかり解説


  1. ... 個数が不定(可変)である引数のこと。 

6
9
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
9