連載
» 2014年02月18日 18時00分 公開

Java 8はラムダ式でここまで変わる(1):初心者のためのJavaラムダ式入門とJDKのインストール、IDEの環境構築 (2/4)

[長谷川智之,株式会社ビーブレイクシステムズ]

インストールの確認(バージョン番号の確認)

 次にインストールが終わったら正しくインストールできたのか確認するために、コマンドプロンプトより下記コマンドを実行します。

java -version

※コマンドプロンプトはWindowsのスタートボタン→[すべてのプログラム]→[アクセサリ]→[コマンドプロンプト]で起動できます。

 Javaのインストールに成功し実行できる状態になっている場合、下記のように「java -version」の右にJavaのバージョンが表示されます。このバージョンがJDK 8の場合は「1.8」となっているので、それを確認してください。ちなみに今回は「1.8.0-ea」(「ea」はEarly Accessの略)と表示されます。

パスの設定

 Javaのインストールが終わったら、次にJavaが実行できるようにJavaを実行する際のパスを環境変数に設定します。

 まず、スタートメニューの[コンピューター]やデスクトップに[コンピューター]のアイコンがある場合はそれを右クリックし[プロパティ]を選択します。

 次に、[システムの詳細設定]を選択しシステムプロパティを開きます。

 続いて、システムプロパティの[環境変数]を選択します。

 [環境変数]にある「Path」にインストールしたJDKの「bin」フォルダーへのパスを指定します。既に別のパスが設定してある場合は「;」で区切り、パスを追記します。

 また[環境変数]には、ユーザーの環境変数とシステムの環境変数があり、どちらに設定しても構いませんが、今回の例ではユーザーの環境変数にパスを新規に追加し、下記のようにシステム環境変数の「%Path%」の次にJDKの「bin」フォルダーへのパスを追加して設定しています。

%Path%;C:\Program Files\Java\jdk1.8.0\bin

 JDKのパスを設定したら新しくコマンドプロンプトを開き、下記のコマンドを入力してパスがきちんと通っているか確認します。

echo %Path%

Javaファイルのコンパイルと実行

 実行できる環境が整ったら、ラムダ式のソースをコンパイルして実行してみましょう。

実行するJavaファイル

 今回のサンプルは実行すると「Hello, テスト 太郎」と標準出力するものです。下記のJavaファイル「Sample.java」をパッケージのフォルダーごと任意の場所に配置します。

package jp.co.atmarkit.lambda.sample01;
public class Sample {
    
    public static void main(String[] args){
        SampleFunction function = (name) -> 
System.out.println("Hello, " + name);
        function.say("テスト 太郎");
    }
    
    @FunctionalInterface
    private interface SampleFunction {
        public void say(String name);
    }
}
Sample.java

コラム「Java SE 8で追加される@FunctionalInterfaceアノテーション」

 Java SE 8 ではラムダ式の導入とともに、インターフェースが関数型であることを示すアノテーション「@FunctionalInterface」が追加されます。

 このアノテーションはインターフェースが関数型であることを定義するためのもので、@FunctionalInterfaceを定義しているインターフェースが関数型インターフェースではない場合にコンパイルエラーになります。

 インターフェースが関数型ある限り@FunctionalInterfaceを付けずにラムダ式で記述してもエラーにはなりませんが、後で対象のインターフェースが関数型でなくなるのを防ぐためにも、このアノテーションは付けておくことが無難かと思われます。


javacコマンドでコンパイル

 次に、コマンドプロンプトを開いてソースを置いたフォルダーに移動します。今回は「C:\sample\src」にソースを置いています。ここから下記のjavacコマンドを使ってJavaのソースをコンパイルします。

javac {オプション} {パッケージのフォルダー\ファイル名}

 今回はパッケージ名を「jp.co.atmarkit.lambda.sample01」にし、ファイルをUTF-8で記述しているので下記のコマンドでコンパイルします。

javac -encoding UTF-8 jp\co\atmarkit\lambda\sample01\Sample.java

javaコマンドで実行

 コンパイルが終わったらコンパイルされたクラスをjavaコマンドで実行します。下記のコマンドを入力し実行すると「Hello, テスト 太郎」と表示されます。

java {パッケージからのクラス名}

 今回のコンパイルから実行までの一連のコマンドは下記のようになります。

C:\>cd C:\sample\src
C:\sample\src>javac -encoding UTF-8 jp\co\atmarkit\lambda\sample01\Sample.java
C:\sample\src>java jp.co.atmarkit.lambda.sample01.Sample
Hello, テスト 太郎
C:\sample\src>

ラムダ式を実装できる3つのIDE(統合開発環境)の構築

 2014年1月執筆時、ラムダ式を実装できる開発環境は既に幾つか出ています。JDK 8の対応を実験的に行っているものも含めて、現在使える開発環境の主なものは下記の3つです。

 次ページでは、それぞれの開発環境でどのようにラムダ式を実行できる環境を構築するのか見ていきましょう。

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。