Java面试问题之五十一

问题:请问Java语言实现闭包了吗?你是如何理解语言中闭包的概念的,请详细谈谈你的看法。

答:Oracle公司在最新推出的JDK 7.0中提供了闭包与Lambda表达式的一个实现方式,虽然还有许多值得考虑的地方,但是从Java语言的发展趋势来看,支持闭包的概念无疑是Java语言的一个方向。所谓闭包是指可以包含自由(未绑定到特定对象)变量的代码块,这些变量不是在这个代码块内或者任何全局上下文中定义的,而是在定义代码块的环境中定义的。“闭包”这个概念来源于以下两者的结合:要执行的代码块和为自由变量提供绑定的计算环境(作用域)。闭包的价值在于可以作为函数对象或者匿名函数,对于类型系统而言这就意味着不仅要表示数据还要表示代码。支持闭包的多数语言都将函数作为第一级对象,就是说这些函数可以储存到变量中,作为参数传递给其他函数,最重要的是能够被函数动态地创建和返回。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值