1. 程式人生 > >20.Class的繼承

20.Class的繼承

出現 原生 兩個類 get object point per 實現繼承 關鍵字

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的繼承