Dart常量
final 和 const修饰符
const值不变,一开始就得赋值
final可以开始不赋值,只能赋值一次;而final不仅有const的编译时常量的特性,最重要的它是运行时常量,并且final是惰性初始化,即在运行时第一次使用前才初始化。
均表示不可被修改
相同点
1、final、const必须初始化
2、 final、const只能赋值一次
不同点
1、 final可修饰实例变量、const不可以修饰实例变量
2、访问类中const修饰的变量需要static修饰
3、const修饰的List集合任意索引不可修改,final修饰的可以修改
4、const 用来修饰变量 只能被赋值一次,在编译时赋值
final 用来修饰变量 只能被赋值一次,在运行时赋值
5、final 只可用来修饰变量, const 关键字即可修饰变量也可用来修饰 常量构造函数
当const修饰类的构造函数时,它要求该类的所有成员都必须是final的。
相同点
1、final、const必须初始化
2、 final、const只能赋值一次
不同点
1、 final可修饰实例变量、const不可以修饰实例变量
2、访问类中const修饰的变量需要static修饰
3、const修饰的List集合任意索引不可修改,final修饰的可以修改
4、const 用来修饰变量 只能被赋值一次,在编译时赋值
final 用来修饰变量 只能被赋值一次,在运行时赋值
5、final 只可用来修饰变量, const 关键字即可修饰变量也可用来修饰 常量构造函数
当const修饰类的构造函数时,它要求该类的所有成员都必须是final的。
分类:
Flutter
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix