Dart語言基礎語法

語法定義了一組用於編寫程式的規則。每種語言規範都定義了自己的語法。Dart程式代碼由以下組成 -

  • 變數和運算符
  • 函數
  • 運算式和編程構造
  • 決策和迴圈結構
  • 注解
  • 庫和包
  • 類型定義
  • 數據結構 - 集合/泛型

第一個Dart語序

main() {
   print("Hello World!");
}

main()函數是Dart中的預定義方法。此方法充當應用程式的入口點。Dart腳本需要main()方法來執行。print()是一個預定義的函數,它將指定的字串或值列印到標準輸出(即終端)。

上述代碼的輸出將是 -

Hello World!

執行Dart程式

可以使用以下兩種方式執行Dart程式 -

  • 通過終端/控制臺
  • 通過WebStorm IDE

通過終端/控制臺

通過終端執行Dart程式 -

  • 進入到當前專案的路徑
  • 在“終端/控制臺”窗口中鍵入以下命令 -
C:/> dart helloword.dart

通過WebStorm IDE

要通過WebStorm IDE執行Dart程式 -

  • 右鍵單擊IDE上的Dart腳本檔。(該檔應包含main()函數以啟用執行)
  • 單擊“運行<file_name>”選項。

如下截圖所示 -

WebStorm

Dart命令行選項

Dart命令行選項用於修改Dart腳本執行。Dart的常見命令行選項包括以下內容 -

編號 命令行選項 描述
1 -c--c 啟用斷言和類型檢查(選中模式)。
2 --version 顯示VM版本資訊
3 --packages <path> 指定程式包解析配置檔的路徑。
4 -p <path> 指定在何處查找導入的庫。此選項不能與--packages一起使用。
5 -h--help 顯示幫助資訊。

啟用檢查模式

Dart程式以兩種模式運行,即 -

  • 檢查模式
  • 生產模式(默認)

建議在開發和測試期間以檢查模式運行Dart VM,因為它會添加警告和錯誤以幫助開發和調試過程。選中的模式會強制執行各種檢查,例如類型檢查等。要打開選中的模式,請在運行腳本時在腳本檔案名之前添加-c或—checked選項。

但是,為了在運行腳本時確保性能優勢,建議在生產模式下運行腳本。

假設test.dart 腳本檔代碼如下 -

void main() {
   String s = "welcome to xuhuhu.com";
   print(s);
}

輸入以下命令運行腳本 -

C:/> dart test.dart

上面腳本將產生以下輸出 -

welcome to xuhuhu.com

Dart識別字

識別字是程式中元素的名稱,如變數,函數等。識別字的規則是 -

  • 識別字可以包括字元和數字。但是,識別字不能以數字開頭。
  • 除下劃線(_)或美元符號($)外,識別字不能包含特殊符號。
  • 識別字不能是關鍵字。
  • 它們必須是唯一的。
  • 識別字區分大小寫。
  • 識別字不能包含空格。

下表列出了有效和無效識別字的幾個示例 -

有效識別字 無效識別字
firstName Var
first_name first name
num1 first-name
$result 1result

Dart關鍵字

關鍵字在語言的上下文中具有特殊含義。下表中列出了Dart語言中的一些關鍵字。

abstract continue false new this
as default final null throw
assert deferred finally operator true
async do for part try
async* dynamic get rethrow typedef
await else if return var
break enum implements set void
case export import static while
catch external in super with
class extends is switch yield
const factory library    

空白和換行

Dart忽略程式中出現的空格,跳位字元和換行符。可以在程式中自由使用空格,跳位字元和換行符,並且可以自由地以簡潔一致的方式格式化和縮進程序,使代碼易於閱讀和理解。

Dart區分大小寫
Dart區分大小寫。Dart中大寫和小寫字元表示不同地含義。

聲明以分號結尾

每行指令都稱為語句。每個dart語句必須以分號(;)結尾。一行可以包含多個語句。但是,這些語句必須用分號分隔。

Dart注釋

注釋是提高程式可讀性的一種方法。注釋可用於包含有關程式的其他資訊,如代碼的作者,有關函數/構造的提示等。編譯器會忽略注釋。

Dart支持以下類型的注釋 -

  • 單行注釋(//) - // 和行尾之間的任何文本都視為注釋
  • 多行注釋(/* */) - 這個注釋可能跨越多行。
// 這是單行注釋

/* 這是...
   一個

   多行的

   注釋
*/

Dart面向對象編程

Dart是一種面向對象的語言。面向對象是一種遵循真實世界建模的軟體開發範例。面向對象將程式視為通過稱為方法的機制相互通信的對象集合。

  • 對象 - 對象是任何實體的即時表示。根據Grady Brooch,每個對象必須具有三個功能 -
    • 狀態 - 由對象的屬性描述。
    • 行為 - 描述對象的行為方式。
    • 標識 - 將對象與一組類似此類對象區分開的唯一值。
  • 類 - 類是創建對象的藍圖/範本,類封裝了對象的數據。
  • 方法 - 方法促進對象之間的通信。

示例:Dart和麵向對象

class TestClass {
   void display() {
      print("Dart and Object Orientation");
   }
}
void main() {
   TestClass c = new TestClass();
   c.display();
}

上面的示例代碼中定義了一個類TestClass。該類有一個display()方法。該方法在終端上列印字串 - "Dart and Object Orientation"new關鍵字創建類的對象。該對象調用display()方法。

執行上面代碼將產生以下輸出 -

Dart and Object Orientation

上一篇: Dart語言開發環境 下一篇: Dart數據類型