码迷,mamicode.com
首页 > 其他好文 > 详细

Dart—dynamic、var、Object的区别

时间:2020-11-06 01:56:19      阅读:20      评论:0      收藏: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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!