Dart Constructors(構造函式)

--

在 Dart 中,Constructor(構造函式) 負責建立物件(Instance),並初始化其屬性。Dart 提供多種 Constructor 類型,並且支援一些特殊語法來優化物件建立的方式。

Constructors 類型

  1. Default Constructor(預設構造函式)
  2. Named Constructor(具名構造函式)
  3. Factory Constructor(工廠構造函式)
  4. Redirecting Constructor(重定向構造函式)
  5. Const Constructor(常數構造函式)

📝 Default Constructor(預設構造函式)

當類別中沒有明確定義 Constructor 時,Dart 會自動提供一個無參數的預設構造函式

📌 範例

✅ 使用

📝 Named Constructor(具名構造函式)

Dart 不支援 Constructor Overloading(函式重載),但可以透過 Named Constructor 來提供不同的初始化方式。而 Named Constructor 可以使用 Initializer List(初始化列表) 來設定預設值。

📌 範例

✅ 使用

📝 Factory Constructor(工廠構造函式)

Factory Constructor 可用於:

  1. 避免每次都建立新實例(例如:Singleton Pattern)
  2. 根據條件決定是否建立新實例
  3. 返回子類的實例,而非當前類別

📌 1️⃣ 避免每次都建立新實例

✅ 使用

📌 2️⃣ Singleton(單例模式)

✅ 使用

📌 3️⃣ 回傳子類的實例

✅ 使用

📝 Redirecting Constructor(重定向構造函式)

如果一個 Constructor 只是為了呼叫另一個 Constructor,我們可以使用 Redirecting Constructor 來簡化代碼。

📌 範例

✅ 使用

📝 Const Constructor(常數構造函式)

📌 範例

✅ 使用

如果您喜歡我的文章,請多按幾下「拍手」給我鼓勵,或是按「follow」讓我持續提供好文章給您。

--

--

No responses yet