可调用对象
要使 Dart 类的实例能够像函数一样被调用,请实现 call()
方法。
call()
方法允许定义它的任何类的实例模拟函数。此方法支持与普通 函数 相同的功能,例如参数和返回类型。
在以下示例中,WannabeFunction
类定义了一个 call()
函数,该函数接受三个字符串并将它们连接起来,每个字符串之间用空格分隔,并附加一个感叹号。点击运行执行代码。
class WannabeFunction {
String call(String a, String b, String c) => '$a $b $c!';
}
var wf = WannabeFunction();
var out = wf('Hi', 'there,', 'gang');
void main() => print(out);