继承的概念
继承是让一个对象可以拥有另一个对象的属性和方法,而不用自己去添加,类似于原型和实例对象的关系。
面向对象编程,有一个特性就是继承。
原型继承
我们可以通过修改对象的原型,让对象能拥有其他对象的属性和方法
弊端:继承来的属性在原型上,不在自己上,当给自己添加同名属性时,就无法使用原型的属性了。
借用函数继承
通过借用函数,可以在子构造函数中,执行父构造函数中的代码,将父构造函数中的属性添加在子构造函数中。
弊端:父构造函数原型上的方法,bird实例对象无法使用。
组合继承
为了解决原型继承和借用函数继承的弊端,可以将这两种继承方式都使用上。
ES6的继承
在ES6的类中定义的对象,实现继承有继承的语法: class 子类 extends 父类{}