📅  最后修改于: 2023-12-03 15:41:35.753000             🧑  作者: Mango
在 ES6 中,我们可以使用 class
关键字来定义类。而子类和继承则是面向对象编程中非常重要的概念之一。
子类可以继承父类的属性和方法。我们可以使用 extends
关键字创建子类,其语法如下:
class Child extends Parent {
}
上面的代码中,Child
是子类,Parent
是父类。
子类可以继承父类的属性和方法。我们可以使用 super
对象来调用父类的属性和方法。示例如下:
class Parent {
constructor(name, age) {
this.name = name;
this.age = age;
}
introduce() {
console.log(`My name is ${this.name}, and I am ${this.age} years old.`);
}
}
class Child extends Parent {
constructor(name, age, grade) {
super(name, age); // 调用父类的构造函数
this.grade = grade;
}
introduce() {
super.introduce(); // 调用父类的 introduce 方法
console.log(`I am in grade ${this.grade}.`);
}
}
const john = new Child('John', 10, 5);
john.introduce();
// output: My name is John, and I am 10 years old.
// I am in grade 5.
在上面的例子中,Child
类继承了 Parent
类,并且重写了 introduce
方法。在 Child
类的构造函数中,我们使用了 super(name, age)
来调用父类的构造函数以设置 name
和 age
属性,并使用 this.grade = grade
来设置 grade
属性。
在 Child
类的 introduce
方法中,我们首先调用了父类的 introduce
方法,然后输出了该类的 grade
属性。
子类和继承是 ES6 中非常重要的概念之一。通过继承,子类可以继承父类的属性和方法,达到代码重用的效果。同时,通过重写父类的方法,子类还可以改变父类方法的行为。