js中extends和super
时间: 2023-09-01 15:09:19 浏览: 98
在 JavaScript 中,`extends` 和 `super` 是用于实现类继承的关键字。
`extends` 关键字用于创建一个类的子类,子类可以继承父类的属性和方法。一个子类可以继承一个父类,而一个父类也可以有多个子类。
下面是一个使用 `extends` 的示例:
```javascript
class Animal {
constructor(name) {
this.name = name;
}
speak() {
console.log(`${this.name} makes a sound.`);
}
}
class Dog extends Animal {
constructor(name, breed) {
super(name);
this.breed = breed;
}
speak() {
console.log(`${this.name} barks.`);
}
}
const myDog = new Dog('Max', 'Labrador');
myDog.speak(); // 输出: "Max barks."
```
在上面的示例中,`Animal` 是父类,`Dog` 是子类。子类 `Dog` 使用 `extends` 关键字继承了父类 `Animal`。子类 `Dog` 也可以定义自己的方法,如 `speak()`。
在子类中,`super` 关键字用于调用父类的构造函数和方法。在构造函数中,`super(name)` 调用了父类 `Animal` 的构造函数,并传递了 `name` 参数。在 `speak()` 方法中,`super` 调用了父类 `Animal` 的 `speak()` 方法。
这样,通过使用 `extends` 和 `super`,我们可以实现在子类中继承和扩展父类的功能。
阅读全文