谈一谈JavaScript继承
最近在复习一些JavaScript基础的东西,碰到js的原型和继承这一块总是感觉不悟其中精髓。因此,这篇文章算是从我自己理解的角度对js继承进行总结和剖析。 什么是继承 大多数人使用继承不外乎是为了获得这两点好处,代码的抽象和代码的复用。 代码的抽象就不用说了,交通工具和汽车这类的例子数不胜数,在传统的OO语言中(比如Java),代码的抽象更多的是使用接口(interface)来实现,而使用继承更多地是为了代码的复用(虽然现在强调使用组合而不是使用继承)。 怎么复用的?打个比方,class A 继承了 class B,class A便拥有了class B 的public 和 protected类型的变量和方法,用最简单的方法去想,便是 class B 将 这些属性和方法直接copy给class A,这样便实现了继承。 因此我们可以这样说,继承实际上是一种类与类之间的copy行为。 ...