flutter【1】-dart語言--基本知識

暱稱真難選發表於2019-08-09

官網

dart 官網

dart中文網

核心概念

  • 一切能賦給變數的都是物件,每個物件都是一個類的例項。數字、方法、null 都是物件,所有的物件都是繼承自 Objet 類。
  • 強型別語言,但是具備型別推斷的能力。如果想明確說明變數型別不確定,則可以定義為 dynamic 型別。
  • 支援泛型
  • 支援頂級方法,以及類、例項方法,也可以在方法中建立方法
  • 支援頂級變數,以及類、例項變數
  • 沒有 public、protected、private關鍵字,以下劃線(_)開頭的識別符號表示私有。
  • 識別符號以字母或者下劃線開頭
  • 支援表示式(有 runtime values,如 condition ? value1 : value2)和語句(沒有,例如 if-else statement)。語句包含一個或多個表示式,表示式不能包含語句。
  • dart工具可以報告 warnings 和 errors(compile-time error 或者 run-time error)。

關鍵字

參考官網

變數

  • 型別推斷方式 var name = 'bob';
  • 動態型別變數 dynamic name = 'bob';
  • 靜態型別變數 String name = 'bob';

預設值

未初始化的變數預設值未 null ,即使時數字型別的變數未初始化,預設值也是 null ,因為所有能賦值給變數的都是物件。

int lineCount;
assert(lineCount == null);//在生產模式下會被自動忽略,在開發模式下如果不滿足條件會丟擲異常
複製程式碼

Final 和 const

和 java 類似,定義常量,final 修飾的變數只可以賦值一次,const 修飾的變數是編譯時常量,const含有final的作用。

例項變數可以用final修飾,但是不能用const修飾,並且必須在構造器方法體執行之前使用構造引數進行初始化

類級別的常量可以用 static const 修飾。

const 不僅可以用來宣告常量,還可以用來建立常量,宣告建立常量的構造器。任何變數都可以被常量值賦值。

相關文章