タグ

関連タグで絞り込む (2)

タグの絞り込みを解除

javaとlambdaに関するj5ik2oのブックマーク (2)

  • Java8におけるindyとLambdaの絶妙な関係、もしくはSAMタイプを継承する内部クラスの.classファイルはどこへ行ったの? - uehaj's blog

    JJUG CCC 2013 Springのさくらばさんのセッションで「Java 8の怖い話」として、Lambda式をJVM上で実行するにあたり、 invokedynamicを使っている Lambda式の仕様は、意味的にはSamタイプを継承する内部クラスのインスタンスのはずだが、lambda式を使っているJavaソースをコンパイルしても、内部クラスに対応する.classファイルが生成されない という話を聞きました。Lambdaの実行に、内部的にバイトコードを生成して使っている、という話だったのですが、indy使ってるってのは、良く考えると解せないです。Lambdaになんらかの動的な側面があるんでしょうかね??? ということで、調べてみました。 [:contents] 結論 結論から書くと、OracleJava8のJDKのJavacは、Lambda式の体を、SAMタイプを継承する内部クラス

    Java8におけるindyとLambdaの絶妙な関係、もしくはSAMタイプを継承する内部クラスの.classファイルはどこへ行ったの? - uehaj's blog
  • Project Lambda

    このエントリは Java Advent Calendar 2011 の一環で、第 1 日目のエントリーです。 やっぱり、櫻庭といえば Java SE の新しいところでしょう (これ去年も書いたなぁ ^ ^;;)。ということで、Java SE 8 の目玉機能となっている Project Lambda を取りあげます。 結果的に超長文になってしまいましたww 厳密にいえば、Lambda はクロージャではありません。 追記: ここでいっているクロージャはレキシカルスコープが使用できる無名関数のことを意味しています。 (るとさん、コメントありがとうございました) では、ラムダ式とはなんなのか? それはタスクを簡単に書くことを目的とした、単一メソッドのインタフェースのインスタンス生成を簡単に書くための簡易記法です。ようするにシンタックスシュガーでしかありません。 ここでいうタスクは、特にパラレルに処

    j5ik2o
    j5ik2o 2011/12/02
    Java進化これもまたよさげ
  • 1