返回
Dart 面向对象 —— 理解 Dart 类之间的关系
IOS
2023-09-13 07:25:15
Dart 是一种面向对象的编程语言,它支持类和继承。类是 Dart 中定义数据类型和行为的基本结构,而继承允许我们创建新的类,这些类具有父类的属性和行为,同时也可以拥有自己的属性和行为。
在 Dart 中,类是单继承的,这意味着一个类只能从一个父类继承。使用 extends 来继承一个类。子类将继承除了构造方法之外的所有属性和方法。
为了更好地理解继承,我们来看一个示例。我们创建一个 Person 类,它具有 name 和 age 属性。
```dart
class Person {
String name;
int age;
Person(this.name, this.age);
void speak() {
print("My name is $name and I am $age years old.");
}
}
现在,我们创建一个 Student 类,它从 Person 类继承。Student 类具有自己的 name 和 age 属性,以及一个新的 grade 属性。
class Student extends Person {
int grade;
Student(String name, int age, this.grade) : super(name, age);
void study() {
print("I am studying.");
}
}
Student 类继承了 Person 类的所有属性和方法,包括 name、age 和 speak() 方法。此外,Student 类还具有自己的 grade 属性和 study() 方法。
我们可以使用 Student 类来创建新的对象。例如,我们可以创建一个名为 "John" 的学生,年龄为 18 岁,成绩为 "A"。
Student john = new Student("John", 18, "A");
现在,我们可以使用 john 对象来访问 Person 类的属性和方法,以及 Student 类的属性和方法。例如,我们可以使用 john.name 来获取 John 的名字,使用 john.age 来获取 John 的年龄,使用 john.speak() 来让 John 说话,使用 john.grade 来获取 John 的成绩,以及使用 john.study() 来让 John 学习。
继承是 Dart 中一个非常重要的特性。它允许我们创建新的类,这些类具有父类的属性和行为,同时也可以拥有自己的属性和行为。这使得我们可以在 Dart 中创建复杂的程序。