gpt4 book ai didi

flutter - Dart/Flutter super (key:key)示例

转载 作者:行者123 更新时间:2023-12-03 03:34:17 30 4
gpt4 key购买 nike

将此代码用于有状态小部件的构造函数:

  MyHomePage({Key key, this.title}) : super(key: key);

这与编写以下内容是否相同:
MyHomePage(Key key, String title) {
super(key);
this.title = title;
}

此外,我知道第一个':'将启动初始化程序列表,或者必须在手边的构造函数之前调用的函数-在这种情况下为“MyHomePage”。

在任何情况下,除了-或- super 以外,还有其他功能吗?

最佳答案

对于第一个问题:

不,因为 super 类已经构建,所以它不起作用,并且您会收到此错误:The expression doesn't evaluate to a function, so it can't be invoked
对于第二个问题:

除了初始化字段和调用父类(super class)的构造函数外,在开发过程中还将在初始化器列表中使用断言(请参见何时工作here),例如:

import 'dart:math';

class Point {
final num x;
final num y;
final num distanceFromOrigin;

Point(x, y)
: assert(x < y),
x = x,
y = y,
distanceFromOrigin = sqrt(x * x + y * y);
}

main() {
var p = new Point(2, 3);
print(p.distanceFromOrigin);
}

引用:
Language Tour - Initializer List

关于flutter - Dart/Flutter super (key:key)示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61968038/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com