20.Class的继承

Posted 消逝的绵羔

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了20.Class的继承相关的知识,希望对你有一定的参考价值。

 

1.简介

Class 可以通过extends关键字实现继承,这比 ES5 的通过修改原型链实现继承,要清晰和方便很多

class Point {
}

class ColorPoint extends Point {
}

上面代码定义了一个ColorPoint类,该类通过extends关键字,继承了Point类的所有属性和方法。但是由于没有部署任何代码,所以这两个类完全一样,等于复制了一个Point类。下面,我们在ColorPoint内部加上代码。

class ColorPoint extends Point {
  constructor(x, y, color) {
    super(x, y); // 调用父类的constructor(x, y)
    this.color = color;
  }

  toString() {
    return this.color + ‘ ‘ + super.toString(); // 调用父类的toString()
  }
}

上面代码中,constructor方法和toString方法之中,都出现了super关键字,它在这里表示父类的构造函数,用来新建父类的this对象。

 

 

2.Object.getPrototypeOf()

 

3.super关键字

 

4.类的prototype属性和__proto__属性

 

5.原生构造函数的继承

 

6.Mixin模式的实现

 

以上是关于20.Class的继承的主要内容,如果未能解决你的问题,请参考以下文章

java 代码片段

操作 Java 泛型:泛型在继承方面体现与通配符使用

26.Qt Quick QML-RotationAnimationPathAnimationSmoothedAnimationBehaviorPauseAnimationSequential(代码片段

Flask之模板之宏继承包含

java中封装,继承,多态,接口学习总结

php如何实现多继承?