当前位置: 首页 > 面试题库 >

变量名称前的下划线“ _”对Flutter意味着什么

东门仲卿
2023-03-14
问题内容

关于Flutter教程,我遇到了下划线_

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

  1. 它也适用于Flutter吗?注意Flutter中没有公共/受保护的。
  2. 请问_真的是私有的(不可访问,其他类),或者是它只是一个命名约定?

变量

 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设为私有?在这种情况下,主类不会无法评估Widget吗?

小部件

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

问题答案:

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

通常State将小部件的实现设为私有,以便只能由相应的小部件实例化StatefulWidget

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

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


 类似资料:
  • 在参考Flutter教程时,我遇到了一个下划线。 null

  • 问题内容: 可以解释一下在Python中使用对象名称前加下划线的含义吗?另外,说明单首和双首下划线之间的区别。无论所讨论的对象是变量,函数,方法等,该含义是否保持不变? 问题答案: 单下划线 类中带有下划线的名称仅是为了向其他程序员表明该属性或方法旨在私有。但是,名称本身并没有做任何特别的事情。 引用PEP-8: :“内部使用”指标较弱。例如,不导入名称以下划线开头的对象。 双下划线(名称改写)

  • 问题内容: 在下面的示例测试中,原始提供程序名称为APIEndpointProvider,但是对于注入和服务实例化,惯例似乎是必须使用下划线将其注入。这是为什么? 我缺少更好的解释的约定是什么? 问题答案: 下划线是一种方便的技巧,我们可以使用它来以其他名称注入服务,以便我们可以在本地分配与该服务同名的局部变量。 也就是说,如果我们无法做到这一点,就必须在本地使用其他名称来表示服务: 在试验中使用

  • 来自请求率和性能指南-Amazon Simple Storage Service: Amazon S3会自动扩展到高请求率。例如,您的应用程序可以在存储桶中的每个前缀每秒至少实现3,500个PUT/POST/DELETE和5,500个GET请求。存储桶中的前缀数量没有限制。以指数方式提高您的读取或写入性能很简单。例如,如果您在Amazon S3存储桶中创建10个前缀以并行化读取,您可以将读取性能扩

  • 我想创建一个

  • 我最近看到新的Gmail API宣布吹嘘OAuth 2.0用户身份验证。 我有点担心,因为在我们的企业Google Apps域中,我已经使用XOAUTH2与Gmail集成。(从本质上讲,XOAUTH2 包括对 IMAP 身份验证的 OAuth 2.0 支持)。 我应该担心吗? 新的Gmail API是否意味着XOAUTH2的终结开始?

  • 这里有多个任务。其中一个任务是。我们称之为。在任务-1中,我分配一个时间戳并生成水印,我使用,其中等于2min。 下一个操作符是我窗口数据,并在上面做一些聚合,然后下沉到Kafka。让我们将这个聚合和下沉的链接任务称为。 :查看这个度量值,它告诉。 问题:当我窗口元素时,我已经分配了0允许的迟到。所以它可能掉了一些元素。但是当我查看度量时,由于windows不是一个运算符,所以没有度量可以告诉wi

  • 问题内容: 即使在今天,我经常在Java变量和方法中看到下划线,例如成员变量(例如“ m_count”或“ _count”)。据我所记得,在这种情况下使用下划线被Sun称为坏样式。 应该使用它们的唯一位置是常量(例如“ public final static int IS_OKAY = 1;”中的常量),因为常量应该全部为大写而不是驼峰式。在这里,下划线应使代码更具可读性。 您认为在Java中使用