2011-05-22 73 views
1

我對Java是如何工作有疑問。我需要做一個代碼像它(在PHP):簡單回調的最佳方法

array_map(function($object){ ... }); 

,提供Java,我接近它:

this.addTransition(new CallerTransition() { 
    @Override 
    protected void execute() { 
     // Do something with _this_ here 
    } 
}); 

翻譯:我需要知道是否存在更好的方法與closures-工作喜歡。

備註CallerTransition是子類型Transition。 addTransition需要Transitionexecute方法將由addTransition執行。

回答

5

Java沒有lambda函數或基於功能性關閉,所以恐怕匿名類是最好的一段路要走。

+0

你的意思是,我做的一樣嗎? – 2011-05-22 04:25:23

+0

非常,是的。 – rfw 2011-05-22 04:25:50

+1

Lambda表達式目前計劃爲Java 8 JSR 335按照JSR 337 - http://openjdk.java.net/projects/lambda/ – 2011-05-22 04:54:34