Dart super和Key在颤振中做什么?

Dart super和Key在颤振中做什么?,dart,flutter,Dart,Flutter,在dart类中,超级单词和关键词起什么作用? 下面的代码就是一个例子: class CardTitle extends StatelessWidget { final String title; const CardTitle(this.title, **{Key key}**) : **super(key: key)**; 键用作小部件、元素和语义节点的标识符。大多数情况下,您不需要使用键,框架会为您处理键,并在内部使用键来区分小部件。有关它们的更多信息,请参见: 至于Super

在dart类中,超级单词和关键词起什么作用? 下面的代码就是一个例子:

class CardTitle extends StatelessWidget {
  final String title;

  const CardTitle(this.title, **{Key key}**) : **super(key: key)**;

用作小部件、元素和语义节点的标识符。大多数情况下,您不需要使用键,框架会为您处理键,并在内部使用键来区分小部件。有关它们的更多信息,请参见:

至于Super关键字:

在您的示例中,我们看到CardTitle小部件扩展了超类无状态小部件,并且在其构造函数中“:”启动了“初始值设定项列表”,这是一个逗号分隔的表达式列表,在超类的构造函数之前执行,因此也在构造函数主体之前执行


在您问题中的示例中,传递给构造函数的键参数被转发到超类的未命名构造函数的命名参数键。

super
用于调用基类的构造函数。因此,在您的示例中,
CardTitle
的构造函数正在调用
无状态widget
的构造函数

Key
是一种类型,用于在flatter中识别小部件,并允许flatter知道在树中移动的小部件何时与以前位于不同位置的小部件相同。这里有一段关于钥匙的精彩视频: