22class的继承

/**
* 可以通过extends关键字继承;
* 在子类的constructor方法和普通方法中,super关键字表示父类的构造函数,来新建父类
* 的this对象;
* 子类必须在constructor方法中调用super方法,否则新建的实例会报错。因为子类的自己的
* this对象,必须先通过父类的构造函数完成塑造,得到与父类同样的实例属性和方法,再对其
* 进行加工,加上自己的实例属性和方法,如果不调用super方法,子类就得不到this对象;
* 在子类的构造函数中,只有调用super之后,才可以使用this关键字,只有super方法才能调用
* 父类实例;
* 子类的实例同时是子类和父类的实例;
* 父类的静态方法也会被子类继承;
*/
/**
* super关键字:既可以当做函数使用,也可以当做对象使用;作为函数,表示父类的构造函数;
* 作为对象时,在普通方法中,指向父类的原型对象,在静态方法中指向父类;
* 在子类的静态方法中通过super调用父类的方法时,方法内部的this指向当前的子类,而不是
* 子类的实例;
*
*使用super的时候,必须显式指定是作为函数还是作为对象,否则会报错;
*由于对象总是继承其他对象,所以可以在任意一个对象中,使用super关键字
*/
/**
* 类的prototype属性和__proto__属性
*
*/
posted @ 2020-02-13 17:39  onyli  阅读(102)  评论(0)    收藏  举报