NetBeans 8 Dev を使って Lambda で遊ぶ その5

Java NetBeans

今日も Java 8 に備えて良く解らないけど未来のコードと戯れたいと思います。

今回は、Functional Interface と Virtual Extension Methods を試してみたいと思います。

ただ、@FunctionalInterface の使い方がこれであっているのか?解りません(>_<。)

@FunctionalInterface を消しても同じようにコンパイル、実行できてしまうんですよね~

@Override なんかと同じでただの注釈なのかなぁ・・・

メリットが良く解らんぜよw

Virtual Extension Methods は以前にも試したんだけど default キーワードのつく位置が変わったの(決められた)のかな。

さて、それでは試してみます。

jp\yucchi\myfunctionalinterface\MyFunctionalInterface.java

実行結果は次のとおりです。

run:
hoge
foo
bar
BUILD SUCCESSFUL (total time: 0 seconds)

実行結果からみて Functional Interface の動作は定義されているとおりに問題なく動いているようです。

Functional Interface の定義については長くなりますのでググってみてください。

日本語で詳しく説明されているサイトが見つかるはずです。

今回のプログラムでは

Object クラスのこの二つのメソッドがあっても問題ないこと、

この Virtual Extension Methods の default 実装があっても Functional Interface の機能を問題なく実行できることを証明しました。

ちゃんとラムダ式で動いてます。(^_^)

実行結果からちゃんと二つの Virtual Extension Methods も動いているのが解ります。

Java 8 の正式リリースが楽しみですね(*^▽^*)

Hatena タグ: ,

« »

Comment

  1. ゆっちsays:

    2013年4月19日 3:21 PM

    @FunctionalInterface が記述してあれば FunctionalInterface の条件が満たされてない場合、コンパイルエラーとなって解るようです。NetBeans を使っていればコーディング中に即座にアラートが出ます。

    返信

Leave a Reply to ゆっち (or Cancel)

* が付いている項目は、必須項目です!

次の HTML タグと属性を利用できます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

*

Trackback URL