Java中不使用Lambda的异步方法链接
在Swift中,使用闭包编写异步方法链接非常容易:Java中不使用Lambda的异步方法链接,java,asynchronous,lambda,closures,Java,Asynchronous,Lambda,Closures,在Swift中,使用闭包编写异步方法链接非常容易: class AsyncTester { class Server { func asyncMethod(completionHandler : ((response : String) -> Void)) -> Void { // completionHandler will be triggered asynchronously when server response retur
class AsyncTester {
class Server {
func asyncMethod(completionHandler : ((response : String) -> Void)) -> Void {
// completionHandler will be triggered asynchronously when server response returned
}
}
func asyncMethod(completionHandler : ((response : String) -> Void)) -> Void {
var server = Server()
server.asyncMethod(completionHandler)
}
func test() {
asyncMethod({ response in
println("got async resposne \(response)")
})
}
}
我知道Java 8中闭包的等价物是Lambda,我想知道不使用Lambda的最简单实现应该是什么样子。如上所述使用接口和匿名类。与Lambda相同:使用接口进行方法声明。对于调用这些方法,您可以使用匿名类(或lambdas)。谢谢。现在我自己才意识到:)