1

我是新来的,正在学习,StatefulWidget但我无法清楚地理解以下术语

class MyApp extends StatefulWidget
{
  @override
  _myState createState() => _myState();
}  

我试过这个

@override return _myState(); 对我来说很清楚,但是我们在createState()方法之前使用_myState 。

4

1 回答 1

2

_myState这里实际上是一个类型,而不是一个变量名。

这个功能在这里

@override
_myState createState() => _myState();

相当于:

@override
_myState createState() {
    return new _myState();
}

该类_myState可能被定义为:

class _myState extends State<MyApp> {
    ...
}

在 dart 中,您不需要使用new(optional) 来实例化对象。

但是,通过命名约定,类名应该使用 PascalCase,在这种情况下,_MyState而不是PascalCase_myState将有助于使其更具可读性,尤其是在您的情况下。

于 2019-01-16T01:45:38.577 回答