Mainクラスとメソッド
メニューを表示するにはスワイプしてください
メインクラス
これまで、私たちは Main という名前のクラスを使ってきましたが、なぜでしょうか?
Main はアプリケーションのエントリーポイント、つまり開始地点として機能します。これまでに記述したすべての処理は main メソッド内で実行されます。Main という名前は、コンパイラがエントリーポイントとして認識するため、変更せずにそのまま使用します。
main メソッド内では多くのメソッドを記述できますが、それらはstaticであり、static キーワードで宣言する必要があります。
static
Java における static キーワードは、クラスのインスタンスではなく、クラス自体に属するメンバー(変数やメソッド)を宣言するために使われます。簡単に説明すると:
-
static 変数:変数が static として宣言されている場合、その変数はクラスのすべてのインスタンス間で共有される唯一のコピーとなります。つまり、その変数に加えた変更はすべてのインスタンスに反映されます。
-
static メソッド:メソッドが static として宣言されている場合、クラスのインスタンスを作成せずに、クラス自体から直接呼び出すことができます。static メソッドは、インスタンス固有のデータにアクセスする必要がないユーティリティメソッドや操作によく使われます。
このため、Main クラスで作成したメソッドを main メソッド内で使用できました。Main クラスのインスタンスを作成しなくても(もちろん作成することも可能ですが)、メソッドを呼び出すことができます。
なぜ Java の main メソッドは static でなければならないのか?
main メソッドは Java プログラムのエントリーポイントであり、クラスのインスタンスを作成せずに呼び出す必要があるため、static でなければなりません。Java Virtual Machine(JVM)が Java プログラムの実行を開始する際、特定のシグネチャ(main)を持つ public static void main(String[] args) メソッドを探して実行を開始します。main メソッドはクラス自体に対して直接呼び出されるため、JVM がオブジェクトを生成せずにアクセスできるように static である必要があります。
1. なぜ私たちのプログラムでは Main というクラス名が使われているのでしょうか?
2. なぜ Java の main メソッドは static として宣言する必要があるのでしょうか
フィードバックありがとうございます!
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください