如何实现继承_javascript中类的继承方式有哪些?

admin 百科 14
JavaScript类继承通过extends实现,底层基于原型链;子类需在constructor中调用super()初始化父类this,super可传参并支持方法重写、静态方法及内置类继承。

如何实现继承_javascript中类的继承方式有哪些?-第1张图片-佛山资讯网

JavaScript 中类的继承主要通过 extends 关键字 实现,这是 ES6 引入的语法糖,底层仍基于原型链。它让子类能复用父类的属性和方法,并支持重写、扩展逻辑。

使用 extends 和 super 实现基础继承

子类通过 extends 声明继承父类,构造函数中必须调用 super()(否则报错),以初始化父类的 this。super() 相当于执行父类 constructor。

  • 不调用 super():子类构造函数中无法访问 this,会直接报 ReferenceError
  • super() 必须在使用 this 之前调用
  • super 可以传参,这些参数会传给父类 constructor

示例:

class Animal {
  constructor(name) {
    this.name = name;
  }
  speak() { console.log(`${this.name} 发声`); }
}

class Dog extends Animal {
  constructor(name, breed) {
    super(name); // 初始化父类 this
    this.breed = breed;
  }
  speak() { console.log(`${this.name} 汪汪!`); }
}

方法重写与 super 调用父类方法

子类可定义同名方法覆盖父类逻辑;若需在子类方法中调用父类版本,用 super.方法名()

立即学习“Java免费学习笔记(深入)”;

标签: javascript es6 java speak

发布评论 0条评论)

还木有评论哦,快来抢沙发吧~