Hello World - 環境の準備 -

始めにJavaプログラミングの環境構築を行い、次に有名な「Hello World」出力プログラムのコーディングとその動作確認を行います。


環境構築

まず環境構築にあたり、最低限必要なJavaの動作環境について説明します。


プログラム言語にはそれを実行させる方式が大別して2種類あります。1つはプログラムファイルを解読しながら実行していく「インタプリタ方式」で、そしてもう1つはプログラムファイルを実行可能な形式のファイルに変換(コンパイル)してから実行する「コンパイル方式」です。


Javaはどちらかと言うと「コンパイル方式」のプログラム言語になります。しかし他のコンパイル方式の言語(例えばC言語)のようにプラットフォームに依存する実行形式のファイルを生成しません。それはJavaの理念として「Write once, run anywhere(一度コーディングすれば、どこでも動作する)」があるからです。


Javaは「Java Virtual Machine(JVM)」というJava仮想マシンを用意することで、理念であるプラットフォーム非依存を実現させました。したがって、JavaコンパイラはこのJVMが解釈するバイトコード(中間言語)に変換することになります。※1

JVMイメージ

※1 Javaコンパイラが生成するバイトコードは拡張子が「.class」でクラスファイルとも呼ばれています。JVMはこのクラスファイルを解読して実行していくわけです。ですからこのあたりはインタプリタ方式に似ています。


インストール

次のOS及びSDK(The J2SE Software Development Kit)を使用します。サン・マイクロシステムズのサイトにてダウンロード及びインストールを行ってください。ここでは次のものを使用します。


・Windows(Windows XP Professional SP2)用 Version 6 Update 7

▲PageTop

コーディング

Javaの「Hello World」出力プログラムは次のようになります。

ソースコード

・ファイル名:Sample0101.java

 1 : public class Sample0101 {
 2 :   public static void main (String[] args) {
 3 :     System.out.println("Hello World");
 4 :   }
 5 : }

※実際のソースには行数は入りません。


それでは早速、見ていきます。


・1行目

Javaでプログラムを組むときはまず「クラス」を作成することから始まります。詳細については後述しますが、ここではまず、つぎのお約束だけ覚えて置いてください。

  1. Javaのプログラムファイル(以下ソースファイルと呼ぶ)の拡張子は「.java」とします。
  2. 1つのソースファイルにクラスを複数作成できますが、そのうち1つに必ず「public」修飾子を定義しなければいけません。 また、複数のクラスに「public」を定義することはできません。
  3. 「public」修飾子を定義したクラス名とそのファイル名は同じにしなければいけません。

クラスの書式は次の通りです。

[修飾子リスト] class クラス名 {
}

※修飾子は省略可能。修飾子については「修飾子の詳細」を参照してください。


・2行目

メソッド」と呼ばれる処理を呼び出す部分です。メソッドについても詳細は後述しますが、書式は次の通りです。

[修飾子リスト] 戻り値の型 メソッド名(引数) {
  処理;
}

メソッドのなかでもこの行に記述されている「main」メソッドは少し特殊で、処理の開始部分として定義されているものです。処理の開始ですから、このメソッドはアプリケーションで複数記述する事は出来ません。

またmainメソッドの書式は次のように「アクセス修飾子」、「スタティック修飾子」、「戻り値の型」、「引数の型」、すべてこの通りに記述する必要があります。

public static void main(String[] args) {
  処理;
}

・3行目

この部分が「Hello World」を出力する処理になります。いまはクラスの詳細やメソッドの呼び出しについても説明していませんので、次のように記述すれば文字が表示できると覚えておいてください。

System.out.println("出力文字列");

コンパイル

次の手順でソースのコンパイルを行います。


1. コンソール画面を表示しSample0101.javaファイルを保存したフォルダー(ここではC:\dev\java)に移動します。

C:\>cd c:\dev\java [Enter]

C:\dev\java>dir [Enter]
 ドライブ C のボリューム ラベルは Local Disk です
 ボリューム シリアル番号は 5CBC-1019 です

 C:\dev\java のディレクトリ

2007/04/28  03:49       <DIR>          .
2007/04/28  03:49       <DIR>          ..
2007/04/27  01:55                  140 Sample0101.java
               1 個のファイル                 140 バイト
               2 個のディレクトリ  10,931,740,672 バイトの空き領域
        

2. 次に「javac」コマンドを使ってSample0101.javaファイルをコンパイルします。

C:\dev\java>javac Sample0101.java [Enter]

C:\dev\java>
        

上記のようにエラーが表示されず、C:\dev\javaフォルダーに次のファイルが追加されていれば成功です。

・Sample0101.class

C:\dev\java>dir [Enter]
 ドライブ C のボリューム ラベルは Local Disk です
 ボリューム シリアル番号は 5CBC-1019 です

 C:\dev\java のディレクトリ

2007/04/28  03:53       <DIR>          .
2007/04/28  03:53       <DIR>          ..
2007/04/28  03:53                  425 Sample0101.class  ← コンパイルに成功するとクラスファイルが生成されます。
2007/04/27  01:55                  140 Sample0101.java
               2 個のファイル                 565 バイト
               2 個のディレクトリ  10,931,740,672 バイトの空き領域
        

動作確認

それでは「java」コマンドで「Hello World出力プログラム」(Sample0101.class)を実行します!

C:\dev\java>java Sample0101 [Enter]  ← ファイル名(拡張子「.class」を省く)を指定します。
Hello World

C:\dev\java>
        

いかがだったでしょうか、「Hello World」が表示されれば成功です。

▲PageTop

コメント

Javaのソースにコメントを記述することができます。書式は次のとおりです。


・1行コメント(「//」を使用)

public class sample0101 {
    public static void main (String[] args) {
        System.out.println("Hello World"); // 1行のコメントはこのように記述します。
    }
}

・複数行コメント(「/* ~ */」を使用)

public class sample0101 {
    public static void main (String[] args) {
        /*  複数行のコメントは
          このように記述します。*/
        System.out.println("Hello World");
    }
}

この他にJavaではドキュメント生成ツール(JavaDoc)用のコメント書式が用意されていますが、ここでは割愛します。

▲PageTop