📜  在 ES6 中可以使用哪些关键字来实现继承?(1)

📅  最后修改于: 2023-12-03 15:23:08.691000             🧑  作者: Mango

在 ES6 中可以使用哪些关键字来实现继承?

在 ES6 中,可以使用 classextends 关键字来实现继承。使用这些关键字可以更简洁、优雅地实现面向对象编程中的继承。

使用 class 关键字定义类

ES6 中引入了 class 关键字,使得定义类更加直观、简单。使用 class 关键字可以定义一个类,并且支持在类中定义属性和方法。

例如,下面的代码定义了一个名为 Animal 的类,并在其中定义了 nameage 两个属性:

class Animal {
  constructor(name, age) {
    this.name = name;
    this.age = age;
  }

  say() {
    console.log(`I'm ${this.name}, ${this.age} years old.`);
  }
}
使用 extends 关键字实现继承

在 ES6 中,可以使用 extends 关键字来实现继承。使用 extends 关键字可以更加简单、直观地实现类的继承。

例如,下面的代码定义了一个继承自 AnimalDog 类:

class Dog extends Animal {
  constructor(name, age, color) {
    super(name, age);
    this.color = color;
  }

  bark() {
    console.log('wang wang wang!');
  }
}

在上面的代码中,Dog 类使用 extends 关键字继承了 Animal 类,并且在构造函数中调用了 super 方法来调用父类的构造函数。这样就可以在 Dog 类中使用 Animal 类中定义的属性和方法了。

总结

在 ES6 中,可以使用 classextends 关键字来实现继承,使得面向对象编程更加简单、直观。

使用 class 关键字可以定义一个类,并在其中定义属性和方法。

使用 extends 关键字可以实现类的继承,并在子类中使用父类中定义的属性和方法。在子类的构造函数中必须调用 super 方法来调用父类的构造函数。