これは、Javaで計画されている機能について最も話題の1つであるClosuresです。私たちの多くは彼らを切望しています。私たちの中には(Iを含む)少し我慢できず、スクリプティング言語を利用してその空白を埋めています。
しかし、クロージャがついにJavaに到達すると、Javaコミュニティにどのように影響しますか?VMをターゲットとするスクリプト言語の進歩は、クロールの速度を落とすのか、そのままにするのか、それとも容認するのか?人々は新しいクロージャー構文に群がり、Javaコードベースをより機能的に構造化された実装に変えますか?Java全体にクロージャが散在するのを見るだけでしょうか ツール/ IDEサポートにどのような影響がありますか?パフォーマンスはどうですか?そして最後に、人気が高まっている他の言語と比較して、Javaが言語として継続的に採用されることはどういう意味ですか?
提案されている最新のJava Closure構文仕様の1つの例を提供するには:
public interface StringOperation {
String invoke(String s);
}
// ...
(new StringOperation() {
public invoke(String s) {
new StringBuilder(s).reverse().toString();
}
}).invoke("abcd");
になるだろう...
String reversed = {
String s =>
new StringBuilder(s).reverse().toString()
}.invoke("abcd");
[ソース:http://tronicek.blogspot.com/2007/12/closures-closure-is-form-of-anonymous_28.html]