const和final都用于定义常量,但是const更严格。
const:
- 编译时常量,即编译时值必须是明确的。
- 像
const a = new DateTime.now();
,或者赋值为http请求的返回值,就会编译报错。
- 像
- 在class里定义常量,前面必须加static。
- 即写成
static const a = 'xxx';
的形式
- 即写成
final:
- final对象中的非final、const字段可以重新分配
const和final都用于定义常量,但是const更严格。
const:
const a = new DateTime.now();
,或者赋值为http请求的返回值,就会编译报错。static const a = 'xxx';
的形式final: