當今世界主流編程語言無不吸納強大的閉包概念
但有個例外
它就是Java
數年來
Java語言中增加閉包特征的工作看起來毫無進展
早在
年之前
Scala語言和TypeSafe框架的作者Martin Odersky和Phillip Wadler發布了實驗性的
Pizza
項目
由此
人們開始試圖將閉包納入編程語言的基本特征之一
盡管這看起來有點過於復雜
Java社區大概在
年就有了接納閉包概念的想法
但由於Oracle對Sun微系統公司的匆忙收購
Java被冷落
Java語言新版本的發布不斷的被推遲
但在Java
中
事情有了很大的變化
Java語言終於為Java編程部隊配備了閉包的武器
也許這是Java編程語言有史以來最重要的一次升級
Oracle的Java語言架構師Brian Goetz說
他指出
在Java中引入閉包概念對Java程序開發方法的影響甚至會大於Java
中引入的泛型特征對編程方式帶來的影響
就像泛型能使開發人員對數據類型進行抽象
Lambda的目的是讓程序員能夠對程序行為進行抽象
Lambda這個名稱來自於把閉包綁定到Java編程語言的Lambda項目
Lambda以及閉包的引入能做些什麼?你可以這樣想
它能夠讓程序員把一段程序代碼當做數據一樣使用
一個方法可以像定義和使用一個變量那樣的方式被定義和使用
定義出的方法可以被當作參數傳遞到其它方法內
就像它們是一個對象實例或一個類型數據一樣
看起來這好像也沒什麼
但實際上它影響巨大
Goetz說
這將從根本上改變我們開發java程序的方式
我們等待了太久
但隨著Java
的發布
Lambda終於成為Java規格說明書裡的正式特征之一
一種由於過於復雜而最初被傳統程序員放棄的語法將最終成為一種每個現代Java應用程序裡都能看到的標准技術
From:http://tw.wingwit.com/Article/program/Java/hx/201311/26707.html