在Dart中覆盖getter功能?

时间:2014-02-04 05:16:31

标签: dart

我想在dart中声明一个字段,并且只覆盖getter的功能,但我不确定如何/如果可能。

class Pony {
  String ponyGreeting;
  String ponyName;
  Pony(this.ponyGreeting, this.ponyName);

  String get ponyGreeting => "$ponyGreeting I'm $ponyName!";
}

这会导致错误,因为我已经定义了“ponyGreeting”。我不能只是摆脱字段ponyGreeting,因为我想使用构造函数设置它,如果我创建了一个setter,我将不得不在某处设置该值,而我真的不想要一个多余的属性。

1 个答案:

答案 0 :(得分:4)

您可以在getter旁边使用私有变量:

class Pony {
  String _ponyGreeting;
  String ponyName;
  Pony(this._ponyGreeting, this.ponyName);

  String get ponyGreeting => "$_ponyGreeting I'm $ponyName!";
}