可调用对象

要允许像调用函数一样调用 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);