首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在Dart中创建类的实例

可以使用关键字"new"和构造函数。构造函数是一个特殊的函数,用于初始化类的新实例。

在Dart中,类的构造函数有两种类型:默认构造函数和命名构造函数。

  1. 默认构造函数: 默认构造函数没有参数,可以通过类名后直接跟括号来调用。例如,假设我们有一个名为Person的类,我们可以使用默认构造函数创建该类的实例:
代码语言:txt
复制
class Person {
  String name;

  Person() {
    print('Person实例被创建');
  }
}

void main() {
  var person = Person(); // 调用默认构造函数创建Person实例
  person.name = 'John';
  print(person.name); // 输出:John
}

在上面的例子中,我们定义了一个名为Person的类,它具有一个成员变量name和一个默认构造函数。在main函数中,我们使用"new"关键字和构造函数名Person()来创建该类的实例。

  1. 命名构造函数: 命名构造函数是类中带有名称的构造函数,可以使用不同的参数创建类的实例。命名构造函数使用类名后跟句点和名称的方式声明。例如,假设我们有一个名为Person的类,我们可以使用命名构造函数创建该类的实例:
代码语言:txt
复制
class Person {
  String name;
  int age;

  Person(this.name, this.age); // 带有参数的默认构造函数

  Person.fromBirthYear(int birthYear) {
    name = 'Unknown';
    age = DateTime.now().year - birthYear;
  }
}

void main() {
  var person1 = Person('John', 30); // 使用默认构造函数创建Person实例
  print(person1.name); // 输出:John
  print(person1.age); // 输出:30

  var person2 = Person.fromBirthYear(1990); // 使用命名构造函数创建Person实例
  print(person2.name); // 输出:Unknown
  print(person2.age); // 输出:31 (根据当前年份计算)
}

在上面的例子中,我们定义了一个名为Person的类,它具有两个成员变量name和age,并且有一个带有两个参数的默认构造函数和一个命名构造函数fromBirthYear()。在main函数中,我们使用默认构造函数和命名构造函数来创建两个不同的Person实例。

总结: 在Dart中,我们可以使用关键字"new"和构造函数来创建类的实例。默认构造函数没有参数,可以直接通过类名调用,而命名构造函数则需要使用类名和构造函数名称来调用。可以根据需要使用不同类型的构造函数创建实例,并根据构造函数的参数来初始化类的成员变量。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券