個人學習用
不嚴謹
學習的話請看別的博客
變量的三種關鍵字:var dynamic Object
var :一開始定義後不能更改數據類型,但是一開始不賦值的話,以後可以更改數據類型
//var.如果是var那麼開始不能給他賦值
//var定義時候賦值了,就不能更改他的數據類型了
var name ='張三';
//定義時候沒有初始化值,所以可以更改類型
var name;
name = "String";
name = 10;
dynamic:編譯時期不會檢測數據類型,但是運行時候會檢測,而且不能使用Extension擴展的方法
//dynamic,編譯時不會檢測數據類型,運行時會推斷,而且不能使用Extension擴展的方法
dynamic age;
age = "ssss";
age = 12;
Object:類型可變,初始化了也可以變化,所有的類的公共的父類
//Object,類型可變,初始化了也可變
Object obj = "sss";
obj = 123;
var dynamic Object三者的區別
dynamic:動態數據類型,運行時數據類型,只有運行的時候才知道變量的數據類型
優點:可以定義任何數據類型
缺點:會使得代碼運行語法檢查失效,dart是靜態語法檢查,而dynamic只有運行的時候纔會檢查
var:被賦值的時候,數據類型已經被確定,不可更改數據類型,如果定義時候不賦值,則可以更改數據類型
Object:被定義的時候有對應的方法可以調用