无定义的私有函数

时间:2018-07-27 06:55:49

标签: dart

我是镖新手,对此概念我并不熟悉。感谢您的耐心等候。

遇到此问题时,我正在阅读一些代码here。 (第14行)

static final none = Motility._(0);

看一下分配的后半部分,我可以看到一个私有函数,它带有一个整数,但是经过一番搜索,我在类中没有看到定义。

那么,我的问题是这个神秘的功能是什么?我以为这是该语言的一种功能,但是由于从未听说过该概念,因此很难查找它!

1 个答案:

答案 0 :(得分:3)

它调用构造函数

Motility._(this._bitMask);

https://github.com/munificent/hauberk/blob/master/lib/src/engine/stage/tile.dart#L28

new成为可选选项以来,这种情况不再明显,但是拥有私有构造函数是一种常见的模式。 (以_开头的标识符在Dart中是私有的)

Motility基本上是以此方式而非

构建的枚举
enum Motility { none, door, fly, swim, walk, doorAndFly, doorAndWalk, flyAndWalk }

因为这样可以分配自定义值。

相关问题