gpt4 book ai didi

flutter - 变量名前的下划线 "_"对 Flutter 意味着什么

转载 作者:IT老高 更新时间:2023-10-28 12:29:36 33 4
gpt4 key购买 nike

引用 Flutter教程,我遇到了一个下划线,_

我知道在 Java 中,_ 被用作私有(private)变量的命名约定。

  1. 它也适用于 Flutter 吗?请注意,Flutter 中没有公共(public)/ protected 。
  2. _ 真的是私有(private)的(其他类无法访问)还是只是一个命名约定?

变量

class RandomWordsState extends State<RandomWords> {
final List<WordPair> _suggestions = <WordPair>[];
final Set<WordPair> _saved = new Set<WordPair>();
final TextStyle _biggerFont = const TextStyle(fontSize: 18.0);
...
}
  1. _ 是否也将 Widget 设为私有(private)?这样的话,主类是不是无法评估Widget?

功能

Widget _buildRow(WordPair pair) {
final bool alreadySaved = _saved.contains(pair); // Add this line.
...
}

最佳答案

只是一个命名约定。下划线字段、类和方法将仅在定义它们的 .dart 文件中可用。

通常的做法是将小部件的 State 实现设为私有(private),这样它就只能由相应的 StatefulWidget 实例化:

class MyPage extends StatefulWidget {
@override
_MyPageState createState() => _MyPageState();
}

class _MyPageState extends State<MyPage> {
@override
Widget build(BuildContext context) {
return Container();
}
}

关于flutter - 变量名前的下划线 "_"对 Flutter 意味着什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53142171/

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