跳到主要內容

可呼叫物件

若要允許像函式一樣呼叫 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);