JavaScript 类继承
JavaScript 类继承
JavaScript 类继承使用 extends 关键字。
继承允许依据另一个类来定义一个类,这使得创建和维护一个应用程序变得更容易。
super() 方法用于调用父类的构造函数。
当创建一个类时,不需要重新编写新的数据成员和成员函数,只需指定新建的类继承了一个已有的类的成员即可。
这个已有的类称为基类(父类),新建的类称为派生类(子类)。
继承代表了 is a 关系。
super() 方法引用父类的构造方法。
通过在构造方法中调用 super() 方法,调用了父类的构造方法,这样就可以访问父类的属性和方法。
继承对于代码可复用性很有用。
getter 和 setter
类中可以使用 getter 和 setter 来获取和设置值,getter 和 setter 都需要在严格模式下执行。
getter 和 setter 让属性的操作变的很灵活。
类中添加 getter 和 setter 使用的是 get 和 set 关键字。
注意:即使 getter 是一个方法,当获取属性值时也不要使用括号。
getter/setter 方法的名称不能与属性的名称相同。
很多开发者在属性名称前使用下划线字符 “_” ,用于将 getter/setter 与实际属性分开。
要使用 setter,请使用与设置属性值时相同的语法,虽然 set 是一个方法,但需要不带括号。
使用setter和getter方法,就像使用属性一样,赋值和获取值。
提升
函数声明和类声明之间的一个重要区别在于, 函数声明会提升,类声明不会。
首先需要声明类,然后再访问它,否则类似以下的代码将抛出 ReferenceError。
- getter 是一种获得属性值的方法,setter是一种设置属性值的方法
- getter负责查询值,它不带任何参数;setter则负责设置键值,值是以参数的形式传递,在它的函数体中,一切的return都是无效的。
- get/set访问器不是对象的属性,而是属性的特性,特性只有内部才用,因此在javaScript中不能直接访问他们,为了表示特性是内部值用两对中括号括起来表示如[[Value]]

浙公网安备 33010602011771号