可调用对象

要允许你的 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);