Java で Main メソッド用に別のクラスを作成する理由

画面上のコードのクローズアップ

Degui Adil / EyeEm /ゲッティイメージズ





すべての Java プログラムには、常に main() メソッドであるエントリ ポイントが必要です。プログラムが呼び出されるたびに、最初に main() メソッドが自動的に実行されます。

メイン() 方法 アプリケーションの一部である任意のクラスに表示できますが、アプリケーションが複数のファイルを含む複合体である場合は、main() のためだけに別のクラスを作成するのが一般的です。メイン クラスには任意の名前を付けることができますが、通常は単に「Main」と呼ばれます。



メインメソッドは何をしますか?

main() メソッドは、Java プログラムを実行可能にするための鍵です。こちらが 基本的な構文 main() メソッドの場合:

|_+_|

main() メソッドは中かっこ内で定義され、次の 3 つのキーワードで宣言されていることに注意してください: public、 static 、および void :



    公衆: このメソッドは公開されているため、誰でも使用できます。静的: このメソッドは、クラス MyClass のインスタンスを作成しなくても実行できます。空所: このメソッドは何も返しません。(文字列[]引数): このメソッドは文字列引数を取ります。引数 args は何でもよいことに注意してください — 'args' を使用するのが一般的ですが、代わりに 'stringArray' と呼ぶこともできます。

次に、何らかのコードを main() メソッドに追加して、何かを実行してみましょう。

|_+_|

これは伝統的な「Hello World!」です。できるだけシンプルなプログラム。この main() メソッドは、単に「Hello World!」という単語を出力します。本物で プログラム ただし、main() メソッドは 始まる 実際には実行しません。

通常、main() メソッドはコマンド ライン引数を解析し、セットアップまたはチェックを行ってから、プログラムの作業を継続する 1 つまたは複数のオブジェクトを初期化します。

別のクラスかどうか?

プログラムへのエントリ ポイントとして、main() メソッドは重要な位置を占めていますが、プログラマーは、含まれるべきものや、他の機能とどの程度統合されるべきかについて、全員が同意しているわけではありません。



main() メソッドは、直感的に属する場所、つまりプログラムの先頭に表示する必要があると主張する人もいます。たとえば、次の設計では、サーバーを作成するクラスに main() が直接組み込まれています。

ただし、一部のプログラマーは、main() メソッドを独自のクラスに配置すると、作成している Java コンポーネントを再利用可能にするのに役立つと指摘しています。たとえば、以下の設計では main() メソッド用に別のクラスが作成されるため、クラス ServerFoo を他のプログラムまたはメソッドから呼び出すことができます。



Main メソッドの要素

main() メソッドを配置する場所には、プログラムへのエントリ ポイントであるため、特定の要素を含める必要があります。これらには、プログラムを実行するための前提条件のチェックが含まれる場合があります。

たとえば、プログラムがデータベースと対話する場合、 main() メソッドはテストする論理的な場所になる可能性があります または、認証が必要な場合は、おそらくログイン情報を main() に入れます。

最終的に、main() の設計と場所は完全に主観的なものです。練習と経験は、プログラムの要件に応じて、main() を配置する最適な場所を決定するのに役立ちます。