您的位置:首页 > 编程语言 > Java开发

java所谓的闭包与回调

2013-07-02 14:30 169 查看
之所以觉得javascript写起来特别的爽,尤其是在编写异步程序的时候,是因为javascript的闭包,使得我们能够简单的写出异步回调回调函数。。。。所以node.js的异步编程也能很简单的实现。。

在服务器端编程方面,高性能十分依赖非阻塞,异步和回调,同时java这一大大的语言却并没有闭包这一概念(据说新版本有,但是我不知道),也可以采用一定委婉的方式来实现。。。。那就是内部类,因为内部类可以访问所属的外部类对象的所有属性与方法,包括private的。。。。

好了,直接上代码吧:

public interface Incrementable {
public int incrment();
}
public class MyIncremetable{
private int a = 0;

public Incrementable getCaller(){
return new Incrementable(){

@Override
public int incrment() {
// TODO Auto-generated method stub
a++;
return a;
}

};
}

public static void main(String args[]) {
MyIncremetable m = new MyIncremetable();
Incrementable inc = m.getCaller();
System.out.println(inc.incrment());
}
}
这样子看起来貌似也能实现闭包和回调,但是总觉得比较弱,而且并不能适合所有的情况。。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: