Dart 编程中的构造函数

构造函数是用于在创建对象时对其进行初始化的方法。构造函数主要用于设置实例变量的初始值。构造函数的名称与类的名称相同。

构造函数类似于实例方法,但它们没有返回类型。

Dart 中的所有类都有自己的默认构造函数,如果你不为一个类创建任何构造函数,编译器会通过为成员变量分配默认值来隐式地为每个类创建一个默认构造函数。

我们可以在 Dart 中创建一个像这样的构造函数 -

class SomeClass {
   SomeClass(){
      // 构造函数体
   }
}

在 Dart 中创建构造函数时,我们应该记住两个重要的规则,它们是 -

  • 构造函数的名称应与类名称相同。

  • 构造函数不能具有显式返回类型。

构造函数的类型

Dart 中总共存在三种类型的构造函数,这些主要是 -

  • 默认构造函数

  • 参数化构造函数

  • 命名构造函数

默认构造函数

没有参数的构造函数称为默认构造函数。如果您不显式创建构造函数,编译器将隐式创建一个。

例子

class Student {
   Student(){
      print("Inside Student Constructor");
   }
}

void main(){
   Student st = new Student();
}

输出

Inside Student Constructor

参数化构造函数

我们也可以有带参数的构造函数,以后可以用来初始化实例变量。

例子

class Student {
   Student(String name){
      print("Student name : ${name}");
   }
}

void main(){
   Student st = new Student("Tuts!");
}

输出

Student name : Tuts!

命名构造函数

在 Dart 中,命名构造函数主要用于定义多个构造函数。

例子

void main() {

   Student emp1 = new Student();
   Student emp2 = new Student.namedConst('ST001');
}

class Student{
   Student() {
      print("Inside Student Constructor");
   }

   Student.namedConst(String stCode) {
      print(stCode);
   }
}

输出

Inside Student Constructor
ST001