静态属性就是被 类 调用的属性 叫做静态属性
ES5 静态属性写法
类.方法 =function() {}
ES6 只有静态方法,没有静态属性
通过static
关键字定义
super
关键字,既可以当做函数使用,也可以当作对象使用。在这两种情况下,它的用法完全不同。super
作为函数调用时,代表父类的构造函数。ES6 要求,子类的构造函数必须执行一次
super
函数作为函数时,
super
只能用在子类的构造函数之中,用在其他地方就会报错
class A {
constructor() {
}
}
class B extends A {
constructor() {
super(); // 必须在子类的构造函数中调用
}
}
父类不写
constructor
,new 的时候,会自动生成一个constructor
但是由于
super()
必须写上,而且是写在constructor
里面的,所以constructor
和super
就 变成必须写的了super()
除了继承父类的私有属性之外,还会生成一个this
,this
就是我生成的这个实例对象
super{}
在原型方法中出现,指向父类原型(FatherClass.prototype)
在静态方法中出现,指向父类(FatherClass.staticMethods)
super()
在constructor
出现,指向父类 ( 父类() )