Java の main メソッドは、Java アプリケーションへの入り口です。Java アプリケーションがどれほど複雑であっても、規模が大きくても小さくても、実行できる Java プログラムであるため、main メソッドが存在する必要があります。
#main メソッドの定義形式は通常、次のように固定されています。 (推奨学習: java コース)
public class Demo { public static void main(String[] args) { System.out.println("Hello Word"); }}
1. なぜ public なのか
ans1: Java は、private、protected、public などのアクセス可能な修飾子をいくつか指定しています。各修飾子には対応するアクセス許可があり、public が最も高いアクセス許可を持っています。問題を説明するために、main メソッドが private で変更されていると仮定します。その場合、main メソッドの Demo クラスは外部からは見えません。 この場合、JVM は main メソッドにアクセスできません。したがって、JVM がどのような状況でも main メソッドにアクセスできるようにするには、パブリック変更を使用します。 ans2: Java は、private、protected、public などのいくつかのアクセス修飾子を設計しました。 Java で public として宣言されたメソッドまたは変数は、クラスの外部からアクセスできます。 JVM の main メソッドへのアクセスは明らかにクラス内ではないため、main メソッドはパブリック メソッドとして定義する必要があります。2. なぜ静的なのか?
静的を使用すると、JVM がオブジェクトを介さずに main メソッドを呼び出すことがより便利になります。 static キーワードについてわかっていることは、static キーワードによって変更されたメソッドには、インスタンスを作成せずにクラス名を介して直接アクセスできるということです。また、静的に変更されたメソッドと変数は、ヒープ メモリではなく、仮想マシンのメソッド領域に保存されます。 次に、仮想マシンについても同じことが当てはまります。 main メソッドは静的として定義されているため、仮想マシンの場合、プログラムの開始後に main メソッドを呼び出すためにインスタンスを作成する必要はありません。3. 戻り値がない理由 (void)
void は、main メソッドに戻り値がないことを意味します。 Java では、main メソッドがオペレーティング システムに報告する必要がなく、終了情報を返します。 main メソッドが正常に終了すると、Java アプリケーション層シーケンスの終了コードは 0 となり、プログラムが正常に実行されたことを示します。4. main
JVM がプログラム実行の開始点を識別できるように、main の名前を変更することはできません。main メソッドはオーバーロードできますが、オーバーロードされた main メソッドは実行されません。 main メソッドはプログラムの初期スレッドの開始点として機能し、他のスレッドはすべてこのスレッドによって開始されます。 JVM 内には、非デーモン スレッドとデーモン スレッドの 2 種類のスレッドがあります。メイン メソッドは非デーモン スレッドに属します。デーモン スレッドは、通常、JVM 自体によって使用されます。Java プログラムは、また、そのスレッドがデーモン スレッドであることも示します。プログラム内のすべての非デーモン スレッドが終了すると、JVM は終了します。 Runtime クラスまたは System.exit() を使用して終了することもできます。5. String [] args
String[] args は、main メソッド内で変更できる唯一の場所です。 args はarguments の略で、変数のデフォルト名です。これを記述するのが一般的ですが、変更することもできます。命名規則に従っている限り、自由に記述できます。 統合開発ツールを使用する今日の世界では、String[] args は装飾のようなものです。多くの初心者はその役割を知りません。実際、これはプログラムの実行時に渡されるパラメータ グループです。以上がJavaのメインメソッドは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。