var
Dart中var变量一旦赋值,类型便会确定,则不能再改变其类型
object和dynamic
Object 是Dart所有对象的根基类,也就是说所有类型都是Object的子类(包括Function和Null),所以任何类型的数据都可以赋值给Object声明的对象.
①dynamic与Object相同之处在于,他们声明的变量可以在后期改变赋值类型
②dynamic与Object不同的是,dynamic声明的对象编译器会提供所有可能的组合, 而Object声明的对象只能使用Object的属性与方法, 否则编译器会报错。
finall和coast
被final或者const修饰的变量,变量类型可以省略
它们的区别在于,const比final更加严格。final只是要求变量在初始化后值不变,但通过final,我们无法在运行前知道这个变量的值;而const所修饰的是编译时常量,我们在编译时就已经知道了它的值,显然,它的值也是不可改变的。
设常数a>0,在实数范围内解关于x的不等式:ax + 1/x > 4。在这个题目中,a是一个常数,但你不知道a是多少(所以在解题时要分类讨论),这就是Dart中的final。但如果把a改成一个具体的数,比如4、46、100等,那就是const。