Dart—dynamic、var、Object的区别

技术文章 1年前 (2020) 完美者
331 0

标签:dynamic   obj   mic   style   foo   类型   int   ring   动态   

//
main(List<String> args) {
  dynamic x = "xxx"; // 动态数据类型
  print(x.runtimeType); // 只有在运行的时候才能知道具体的数据类型,所以可能存在数据类型检查失败的情况
  print(x);
  // x.foo(); // 这里编译的时候不会报错,但是运行的时候才会报错
  x = 123;
  print(x.runtimeType); // 可以修改它的数据类型

  var y = "yyy";
  print(y.runtimeType);
  print(y);
  // y = 123;  // 非动态数据类型,一旦确定了类型,无法修改,这里会报错

  Object z = "zzz";
  print(z.runtimeType);
  print(z); // 不同于dynamic,它不能调用Object所不存在的方法
  Object a = {"a": 1};
}

 

Dart—dynamic、var、Object的区别

标签:dynamic   obj   mic   style   foo   类型   int   ring   动态   

原文地址:https://www.cnblogs.com/codexlx/p/13930696.html

版权声明:完美者 发表于 2020-11-06 1:56:19。
转载请注明:Dart—dynamic、var、Object的区别 | 完美导航

暂无评论

暂无评论...