6.2.5 闭包式引用

6.2.5 闭包式引用

在下一章“自定义类型”中,本书会和读者介绍什么是值类型以及什么是引用类型。这里先简单说一下闭包是属于哪种类型,让我们通过示例来观察:

动手写6.2.6 ClosureIsReferenceType

控制台输出如下:

与动手写6.2.5中的代码相比,本例中只替换了一行,细心的读者会发现其输出的结果并不像预期的那样,person2不是从一个基础代谢为1000的人开始进行计算的,而是直接延续了person1当前的状态继续进行运算。这就是引用类型的一种特性,事实上person2和person1指向了同一个函数,就是person1所持有的函数,访问person2就是访问person1。这里我们先把这个结论告诉读者,在下一章的内容中,会开始学习区分什么是值类型,什么是引用类型。