主题
变量
重要概念
所有变量(数字、函数、null等)引入都是对象,每个对象都是一个类的实例,所有类都继承于 object 类
是强类型语言,但变量声明时的类型是可选的,因为 Dart 可以进行类型推断
没有 public、protected、private 等成员访问限定符。但变量以 _ 开头,表示其在库内是私有的
变量声明
使用 var const 声明,dart 会进行类型推断
dartvar name = 'musi'; // 名为 name 的变量存储了一个 String 类型对象的引用,'musi' 则是该对象的值
也可以指定类型
dartString name = 'musi';
如果不局限于单一类型,可以将其定义为 Object(或 dynamic)类型
dartObject name = 'musi'; name = 1;
在声明的时候使用 ? ,则变量可以为指定类型,也可以为 null
dartint? num = null; num = 1;
创建一个不可更改的变量,则可以使用 final 或 const
- 实例变量(类的成员)可以是 final,但不可以是 const
- const 除了可以用于定义常量,还可以用来创建常量值
dartfinal name1 = 'musi'; const name2 = 'kingmusi'; final String name3 = 'musi'; cosnt String name4 = 'kingmusi';
dart// 常量值 var foo = const []; foo = 1; // Error
判断变量类型
使用 is
关键字
dart
assert(1 is int); // true