Please help me to understand what it exactly means:
引用"Chapter 2. A Tour of the Dart Language"条中的
声明为final的局部、顶级或类变量在第一次使用时就被初始化
所以这是我的测试代码:
lazyTest(msg) => print(msg);
class Printer{
Printer(msg){
print(msg);
}
final finalClassVariable = lazyTest("final class variable");
}
var globalsAreLazy = lazyTest("top-level");
var lazyInitialized = lazyTest("lazy initialized");
void main() {
final localFinal = new Printer("local final");
var initialize = lazyInitialized;
}
输出:
最终类变量
本地决赛
懒惰已初始化
finalClassVariable
和localFinal
都已初始化,只有globalsAreLazy
未初始化.lazyInitialized
如我所料在访问时初始化.