返回object 多属性对象
写成var func = a; func();
执行func()后只是返回了一个函数体。
Java中没有闭包这个概念,但是Java中的匿名内部类类似于闭包,主要是使用final关键字来持有外部方法中的局部变量,因为外部方法执行后局部变量会被回收,这样匿名内部类中就拿不到外部方法中的局部变量了
我觉得更像js中的闭包;每一个函数调用后就会被垃圾回收机制给回收掉内部的变量,然有了闭包,外部的变量引用了函数内部的变量,所以函数不能被销毁,因此就能持有状态了。