你需要知道的Java&Android知识

闭包是什么

2015-12-07  本文已影响78人  bruce_wu

以前听说过闭包也简单的了解过,一直以为闭包就是可以将函数作为对象或参数使用。
最近看书又看到关于这块的概念发现并非如此,所以就较真详细了解了一下闭包的概念。
有一些编程语言(如: javascrpt)中提供了函数对象的概念,有些人包括我认为这个就叫做闭包,其实这是不准确的。

1、闭包是指函数有自由独立的变量。换句话说,定义在闭包中的函数可以“记忆”它创建时候的环境。
2、在函数对象中,将局部变量及其环境封闭起来的结构被称为闭包。

如上代码,将带有 n 这个变量和环境封闭起来并可以供外部使用的结构就是闭包。

上一篇下一篇

猜你喜欢

热点阅读