syntax - Dart方法签名中的大括号有什么用

标签 syntax constructor dart

class TapboxA extends StatefulWidget {

 TapboxA({Key key}) : super(key: key);

}

这部分 :
TapboxA({Key key}) 

下半场
super(key: key);

我明白,(对父类(super class)构造函数的调用)。

但是什么是
{Key key}

语法在做什么?

最佳答案

在 Dart 构造函数(和其他方法)中可以有可选的命名参数:

MyClass({String namedParam}){//...}

对于 Flutter 小部件构造函数:
TapboxA({Key key})  // TapboxA constructor defines a named parameters `key`
: super(key: key); //which is used within the super constructor call (which also has `key` as named parameter )

您可以找到有关 optional named parameters in the Dart language tour 的更多信息

关于syntax - Dart方法签名中的大括号有什么用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46717971/

相关文章:

dart - 如何获得使用 AngularDart 的路线?

syntax - => 和 <= 之间的 VHDL 区别

c++ - 用于在 C++ 中访问数组的代码混淆

c++ - 分配给构造函数? (像一个元组层)

c++ - 循环构造函数

Dart 如何传递泛型函数来隔离

flutter pub run build_runner 构建失败

JavaScript if-else 解释

python - 无效语法指向 python 中的 "return"

C++ 语法/如何在类中声明、填充和访问数组