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

相关文章
相关标签/搜索