什么';dart类中的冒号是什么意思?

什么';dart类中的冒号是什么意思?,dart,syntax,Dart,Syntax,我在试着理解最后两行代码的意思,在冒号上。。。这是一个语法问题。 我正以github为例,对此我心存疑虑。 有人能帮我吗 class DietPlan extends ParseObject implements ParseCloneable { DietPlan() : super(keyDietPlan); DietPlan.clone() : this(); :之后的部分称为“初始值设定项列表”。 它是一个表达式列表,可以访问构造函数参数,并可以分配给实例字段,甚至是最终实例字段

我在试着理解最后两行代码的意思,在冒号上。。。这是一个语法问题。 我正以github为例,对此我心存疑虑。 有人能帮我吗

class DietPlan extends ParseObject implements ParseCloneable {
  DietPlan() : super(keyDietPlan);
  DietPlan.clone() : this();

:之后的部分称为“初始值设定项列表”。 它是一个表达式列表,可以访问构造函数参数,并可以分配给实例字段,甚至是最终实例字段

第一个冒号,即
DietPlan():super(keydeteplan);
表示您正在调用超级构造函数,在本例中是ParseCloneable的构造函数。 这是一个核心OOP概念,您可以将一个类扩展或实现到另一个类,如果这样做,您必须调用超类构造函数。这只是在Dart中执行相同操作的一种方式

第二个冒号的工作原理与此类似,要理解什么是对象的克隆, 对象克隆是指创建对象的精确副本。它创建当前对象类的新实例,并使用该对象对应字段的内容初始化其所有字段。
这就是第二行的内容。

这是否回答了您的问题?