11

Java 7 に登場するクロージャーについて読んでいます。

一方では、新しい Java クロージャーについて説明する素晴らしい記事がたくさんあるので、私は少し混乱しています。しかし一方で、3 つの異なる仕様があり、一部の記事は最新の提案を説明していないため、単純に古くなっています。

したがって、誰かが Java クロージャの進行状況を最初から追跡している場合は、3 つの提案すべてとその現在の状態を非常に簡潔に説明してください。

クロージャについて私がもう 1 つ疑問に思っているのは、開発ラインが 1 つしかないのか、それとも異なるバージョンが開発されているのか (Sun、Google、Apache などのクロージャなど) ですか?

4

2 に答える 2

6

私の記憶が正しければ

CICE は、クロージャのように見える方法で匿名クラスをより簡単に作成するための単なる構文糖衣でした。

BGGA は、真のクロージャーだけでなく、新しい構文要素のように見える構造を定義する構文 (別名 using(Closable){block}) を可能にする非常に強力な提案でした。

FCM は、2 つの間の妥協点を探る追加の提案であり、完全な閉鎖の提案がありましたが、より良い構文があり、BGGA のより物議を醸す機能のいくつかがありませんでした。

現在の提案はhttp://www.javac.info/closures-v06a.htmlおよびhttp://www.javac.info/closures-v06b.htmlにあります。ここで、パート A は単純な完全な保証であり、パートB は、BGGA から取られたより強力な機能の一部です。

于 2010-01-22T20:53:38.340 に答える
2

私が理解していることから、Java 言語にラムダ (一部はクロージャ、一部はクロージャ) を追加する予定の変更であるProject Lambdaは、古い提案の組み合わせになります。提案に関する現在入手可能な最新情報は、仕様の 0.1 ドラフトです進行状況を常に把握するには、 Mark Reinhold の最新情報をフォローしてください。

于 2010-01-24T17:16:16.277 に答える