Dart 这是一种静态方法,还是其他方法?

Dart 这是一种静态方法,还是其他方法?,dart,Dart,我正在学习Dart,这样我可以做一些颤振移动开发。Dart的学习非常简单,我喜欢它,尽管它与Java/C有一些不同之处,但我必须解决 其中之一与此代码有关: class CatalogSlice { final List<CatalogPage> _pages; final int startIndex; final bool hasNext; CatalogSlice(this._pages, this.hasNext) : startIndex

我正在学习Dart,这样我可以做一些颤振移动开发。Dart的学习非常简单,我喜欢它,尽管它与Java/C有一些不同之处,但我必须解决

其中之一与此代码有关:

class CatalogSlice {

  final List<CatalogPage> _pages;

  final int startIndex;

  final bool hasNext;

  CatalogSlice(this._pages, this.hasNext)
      : startIndex = _pages.map((p) => p.startIndex).fold(0x7FFFFFFF, min);

  const CatalogSlice.empty()
      : _pages = const [],
        startIndex = 0,
        hasNext = true;
}
类目录切片{
最终清单(页);;
最终int startIndex;
最后的布尔哈斯下一步;
CatalogSlice(此.\u页,此.hasNext)
:startIndex=\u pages.map((p)=>p.startIndex.fold(0x7FFFFFFF,min);
常量CatalogSlice.empty()
:_pages=const[],
startIndex=0,
hasNext=true;
}
忽略其中所有关于
CatalogSlice
代表什么的业务特定内容,我对
empty()
方法的定义感到困惑。这是静态的、类方法还是其他什么?

这是一个。调用它的方式与调用生成构造函数的方式相同

var instance1 = new CatalogSlice(pages, hasNext);
var instance2 = new CatalogSlice.empty();
Dart没有方法/构造函数重载(),这就是他们引入此功能的原因