先写个方法:
void _test1({ VoidCallback callback}) {
callback();
}
然后调用:
- 代码1:
_test1(callback: null);
- 代码2:
_test1(callback: () => null);
结果是代码1崩溃但是代码2不会。
分析
- 1
_test1(callback: null);
这个地方,callback
是 null
,调用 null
的方法,会抛出 NoSuchMethodError
异常。
- 2
_test1(callback: () => null);
这个地方,() => null
是一个 function
,调用这个 function
会得到返回值:null
。