Dart 调用父类构造函数

· 约 4 分钟读完 · 第 53 / 74 章

在 Dart 中,继承是一个重要的概念。当一个子类继承自父类时,有时需要调用父类的构造函数来初始化父类的状态。本章将详细介绍如何在 Dart 中调用父类构造函数。

子类和父类

首先,我们来了解一下什么是子类和父类。子类是从另一个类派生出来的类,它继承了父类的所有属性和方法,并且可以添加新的属性和方法或重写已有的方法。

创建一个简单的父类

让我们从创建一个简单的父类开始。这个类将有一个构造函数,用于初始化其状态。

在这个例子中,Animal 类有两个实例变量 name 和 age,并且有一个构造函数来初始化这些变量。此外,还有一个 displayInfo 方法,用于显示动物的信息。

创建子类并调用父类构造函数

接下来,我们将创建一个子类 Dog,该子类继承自 Animal 类,并在构造函数中调用父类的构造函数。

创建子类

在上面的代码中,Dog 类继承自 Animal 类,并且在构造函数中使用了 super 关键字来调用父类的构造函数。这使得 Dog 类的实例对象能够继承 Animal 类的属性和方法。

使用子类

现在,我们可以创建一个 Dog 类的实例并调用其方法。

上述代码创建了一个名为 myDog 的 Dog 对象,并调用了其 displayInfo 和 bark 方法。

默认构造函数和命名构造函数

除了默认构造函数之外,还可以使用命名构造函数来调用父类构造函数。

使用命名构造函数

在这个例子中,Cat 类有两个构造函数:一个是默认构造函数,另一个是命名构造函数 Cat.purebred。命名构造函数允许我们在创建对象时传递更多的参数,并且可以在构造函数体内进行更复杂的初始化操作。

总结

通过本章的学习,您应该了解了如何在 Dart 中调用父类构造函数。这对于创建具有复杂继承关系的类非常重要。记住,使用 super 关键字来调用父类构造函数,并且可以通过默认构造函数或命名构造函数来实现这一点。