行是知之始,知是行之成。这篇文章主要讲述关于dart中的late关键字,你了解多少?#yyds干货盘点#相关的知识,希望能为你提供帮助。
作者:坚果Dart 2.12 在变量中添加了late修饰符。 这可以用于以下两种情况。
公众号:undefined大前端之旅undefined
华为云享专家,InfoQ签约作者,阿里云专家博主,51CTO博客首席体验官,??开源项目GVA成员之一??,专注于大前端技术的分享,包括Flutter,小程序,安卓,VUE,javascript。
- 将您的项目迁移到零安全。
- 延时初始化一个变量。
?late?
? 修饰符。例子
late String title;
void getTitle()
title = Default;
print(Title is $title);
注意:
在使用变量之前的后期确保变量稍后必须初始化。否则在使用变量时可能会遇到运行时错误。2.延时初始化一个变量这种延时初始化在以下情况下很方便。
- 该变量可能不需要,并且初始化它的成本很高。
- 您正在初始化一个实例变量,它的初始化程序需要访问它。
// This is the programs only call to _getResult().
late String result = _getResult(); // Lazily initialized.
【关于dart中的late关键字,你了解多少(#yyds干货盘点#)】在上面的示例中,如果从未使用过变量,则永远不会调用成本更高的 _getResult() 函数。假设?
?_getResult()?
?是计算该结果的非常重要的函数。但是,如果我们将它分配给任何变量而不延时,那么?
?_getResult()?
?即使我们不使用它,每次都会执行。没有late
//START
String result = _getResult();
//END
在上面的代码中,result从未使用过,但?
?_getResult()?
?依旧会被执行。使用 late
//START
late String result = _getResult();
//END
在上面的代码中?
?_getResult()?
?没有被执行,因为变量result从未使用过发现了没,它是使用late修饰符声明的。好的,关于?
?late?
?关键字,我们就了解到这儿,这也是对自己的知识体系的一个梳理,如果你觉得还不错的话,可以点赞支持一下,谢谢。推荐阅读
- springBoot报错( MyBatis:check the manual that corresponds to your MySQL server version)
- 华为策略路由应用案例
- #yyds干货盘点# 滴滴二面(Kafka是如何读写副本消息的())
- #yyds干货盘点#分布式服务追踪Spring Cloud Sleuth
- 谷歌大神Jeff Dean领衔,万字展望5大AI趋势
- #yyds干货盘点#会话管理
- XP系统右键怎样像win7一样添加“管理员取得所有权”的容易办法
- XP迅速关闭多个窗口的3种办法窍门
- xp如何在word中就能输入破折号的多种办法