11.Dart中最神祕的Mixin有什麼用?

目錄傳送門:《Flutter快速上手指南》先導篇
git

在 Dart 中,有一個神奇的類型,叫作 mixingithub

它和 class 比較相似,但它沒有構造函數。bash

經過 mixin,能夠擴展一個類的屬性和功能,使得類具備 Mixin 類的屬性和函數 API。函數

如何定義一個 Mixin?

使用 mixin 關鍵字來定一個 Mixin 類:post

mixin Musical {
  bool canPlayPiano = false;
  bool canCompose = false;
  bool canConduct = false;

  void entertainMe() {
    if (canPlayPiano) {
      print('Playing piano');
    } else if (canConduct) {
      print('Waving hands');
    } else {
      print('Humming to self');
    }
  }
}
複製代碼

如何使用 Mixin?

經過 with 關鍵來使用 Mixin 類擴展一個類。ui

在 Dart 中,一個類支持擴展無限個 Mixin,它們使用 , 來分隔彼此。spa

class Maestro extends Person
    with Musical, Aggressive, Demented {
  Maestro(String maestroName) {
    name = maestroName;
    canConduct = true;
  }
}複製代碼

目錄傳送門:《Flutter快速上手指南》先導篇
3d

如何找到我?

傳送門:CoorChice 的主頁code

傳送門:CoorChice 的 Githubcdn

相關文章
相關標籤/搜索