如何在 dart 中创建多个构造函数?

Dan*_*iel 2 dart flutter

我想通过调用具有不同数量参数的构造函数来创建不同的对象。我怎样才能在 Dart 中实现这一目标?

class A{
  String b,c,d;

  A(this.b,this.c)
  A(this.b,this.c,this.d)

}
Run Code Online (Sandbox Code Playgroud)

Ale*_*uin 8

请参阅Tour of Dart 的构造函数部分

基本上 Dart 不支持方法/构造函数重载。但是 Dart 允许命名构造函数和可选参数。

在您的情况下,您可以:

class A{
  String b,c,d;

  /// with d optional
  A(this.b, this.c, [this.d]);

  /// named constructor with only b and c
  A.c1(this.b, this.c);
  /// named constructor with b c and d
  A.c2(this.b, this.c, this.d);
}
Run Code Online (Sandbox Code Playgroud)