なぜmain
メソッドを宣言する必要があるのでしょうか? main
メソッドがクラスの出発点であることは知っています。しかし、なぜそれを と宣言する必要があるのpublic static void main(String args[])
でしょうか?
と宣言できないのはなぜpublic static void test(String args[])
ですか?main
キーワードですか?JVM は、それが開始点になることをどのように認識しますか?
なぜmain
メソッドを宣言する必要があるのでしょうか? main
メソッドがクラスの出発点であることは知っています。しかし、なぜそれを と宣言する必要があるのpublic static void main(String args[])
でしょうか?
と宣言できないのはなぜpublic static void test(String args[])
ですか?main
キーワードですか?JVM は、それが開始点になることをどのように認識しますか?
JVM は、プログラムの開始点がどこにあるかを何らかの方法で認識している必要があります。デザイナーがそれをマークするために選択した方法は、エントリ メソッドを呼び出すことですmain
。これは、同じ名前が C (当時ほとんどのプログラマーが慣れ親しんでいた) でその目的に使用され、それが理にかなっているからです。名前に特に魔法のようなものは何もありません。何かを選択する必要があり、それは実用的な選択でした。
プログラムが始まるとき、どこかから始めなければならない..まあ、これがmain
方法です。
なぜ静的なのですか?
JVM がメイン メソッドを呼び出すとき、呼び出されるクラスのオブジェクトは存在しません。したがって、クラスからこれを許可するには静的メソッドが必要です。
なぜ公開?
なぜ無効にするのですか?
main メソッドがなくても任意の Java クラスをコンパイルできますが、スタンドアロン アプリケーションはmain()メソッドがないと実行できません。
メイン メソッドは、アプリケーションの開始時に呼び出されるように定義されたメソッドです。それがなければ、走り始める場所はありません。
It is static
- コンパイラは、メソッドに入るオブジェクトを作成する必要はありません
void
。 - Java はプラットフォームに依存しません。したがって、何かを返す場合、プラットフォームごとに異なる場合があります
public
- アクセス用
main() は、コンパイラがアプリケーションに入るドアを取得するために必要です。名前が示すように、最初に実行する必要があるのはメイン メソッドです。