[Java][基本] mainメソッドの書き方

公開日: : Java, 基本

こんにちはkeiです。

Javaの基本として、意外と知らないmain関数について解説します。

特にWeb系エンジニアにとって、main関数はコンテナがやってくれるので
普段は必要ありません。
そこで、「ちょっとバッチ系プログラムを書きたい」となったときに
あれ?mainってどう書くんだっけ?と思ったエンジニアは少なからずいるはずです。
(わたしもそんな思いでがあります)

と、いうことでベーシックな書き方です。

public class MainClass {
	public static void main(String[] args){
		// BusinessClassクラスを作成
		BusinessClass business = new BusinessClass();

		// executeメソッド実行
		business.execute();
	}
}

public class BusinessClass {
	public void execute(){
		System.out.println("BuisinessClassクラスのexecute()メソッドが実行されました。");
	}
}

●解説

MainClassクラスは、mainメソッドを内包するクラスになります。
クラス名は何でもよいです。

ただし、メソッド名だけは以下内容で固定になります。
「public static void main(String[] args)」 ※String args[]でもまぁ良し。

次に、BusinessClassクラスをnewしています。

BusinessClassクラスは、実処理を書いたクラスを想定しています。
今はサンプルなので、システムアウトだけを書いていますが、
この中に処理したいことを書けばよいでしょう。

最後にexecuteメソッドを実行して完了となります。

とても簡単でしたね。

●短縮記述

上記の例では2クラス使ってプログラムを作成しました。
しかし、簡易な処理を書く際は1クラスで纏めたいときもあります。

最後にその例を紹介します。

public class BusinessClass {

	public static void main(String[] args){

		// BuisinessClassクラスを作成
		BusinessClass business = new BusinessClass();

		// executeメソッド実行
		business.execute();
	}

	public void execute(){

		System.out.println("BuisinessClassクラスのexecute()メソッドが実行されました。");
	}
}

main関数で自分自身をnewします。
その後、executeメソッドを実行するだけです。
「自分自身なんだから、別にnewしなくてもexecuteメソッド呼べばいいじゃん」
と思った方は、オブジェクト指向が理解出来ていないと思われます。

簡単に書くと、
mainはstaticメソッドなので、まだVMにインスタンス化されていません。
executeは実メソッドなので、newしてインスタンスを作成してから、
そのインスタンスに対してexecuteメソッドを呼ぶ必要があります。

と、いうことで、このあたりは今度別稿を設けようと思います。

今回はここまで。

スポンサードリンク

関連記事

no image

[Java][Servlet] EclipseでのJavaServlet作成

こんにちは、今回はEclipseを使用してJavaServletを作成します。 Eclipse

記事を読む

no image

[Java][MySQL] JavaからMySQLを使う方法

MySQLは、フリーでありながら商用としても使用できるパワーを持つデータベース(RDB)です。

記事を読む

no image

[Java][Framework] Spring BootのJPAでDB接続した際のEntityキャッシュのクリア方法

Spring BootのJPAでDBアクセスした際に、処理を一定量こなすと、Heapが足りなくな

記事を読む

no image

[Java] テキストファイルの読み込み方法

こんにちは、今回はテキストファイルをJavaで読む方法を紹介します。 標準で提供されているクラ

記事を読む

no image

[Java][Eclipse] Mavenが利用可能な動的Webプロジェクトの作成

こんにちは、keiです。 今回は、Mavenが利用可能な動的Webプロジェクトの作成について解

記事を読む

no image

[Java] 日付の計算方法(DateFormat、Date、Calendar)

こんにちは、kei0310です。 Javaで日付を計算する方法について解説します。 まず

記事を読む

no image

[Java][Servlet][JSP] ServletからJSPへの転送

こんにちは。 今回は、「Servletでリクエストを受けて、JSPで表示する。」方法を解説しま

記事を読む

no image

[Java] StringBuilderの使い方(Stringを連結するクラス)

今回は、可変長文字列クラスのStringBuilderを紹介します。 固定長文字列クラスのSt

記事を読む

no image

[Java][Jersey] JerseyでRESTfulなJAX-RS Webサービス作成

こんにちは、keiです。 今回はRESTfulなWeb Serviceの作成を行っていきます。

記事を読む

no image

[Java] Javaのインストール(プログラム開発・入門用)

Javaのコードを書きたい!! という目的のためのJavaのインストール方法と、コマンドラインでの

記事を読む

スポンサードリンク

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

スポンサードリンク

no image
[python] 日付の取り扱い(datetime) 現在日付、計算、文字列変換(format)

現在日付 日付の計算 [crayon-59c6ef4a2f25

no image
[python] 文字列結合

pythonでの文字列結合 サンプル

no image
[python] 配列の扱い方

pythonでの配列の扱い方 python 配列の作成

no image
[python] ファイルの読み込み

pythonでのファイルの読み込み方法 基本サンプル

no image
[PHP] 文字列の置換(str_replace)

文字列中の特定文字列を置換する方法 str_replace サ

→もっと見る

  • 2017年9月
    « 8月    
     123
    45678910
    11121314151617
    18192021222324
    252627282930  
  • 2017年9月
    « 8月    
     123
    45678910
    11121314151617
    18192021222324
    252627282930  
PAGE TOP ↑