在上一章中,我们着重介绍了JavaScript中类之间的原型继承关系:原型继承对于继承类中的方法来说是很方便的.那么我们今天就来看一下继承中的类继承以及类继承和原型继承的混用,所谓类继承,就是使用call或者apply方法来进行冒充继承:
1 function Desk(size,height){ 2 this.size=size; 3 this.height=height; 4 } 5 function MJDesk(size,height){ 6 Desk.call(this,size,height);//这种就叫类继承. 7 } 8 var mj = new MJDesk(10,123);
像上面这种就是我们要使用的类继承,用这种继承,我们可以访问类中的方法和属性,但是无法访问父类原型中的方法和属性,这种方法别名冒充继承,顾名思义,就是一个假的继承,所以,假的当然不能继承真的原型,所以,类继承的缺点也是很明显的,当我们使用的多的时候,就会造成内存的浪费.由此,我们就出现了类继承和原型继承混合使用的方法:
1 function Desk(size,height){ 2 this.size=size; 3 this.height=height; 4 } 5 function MJDesk(size,height){ 6 Desk.call(this,size,height);//这种就叫类继承. 7 } 8 MJDesk.prototype=new Desk();//原型继承 9 var mj = new MJDesk(12,12); 10 //当然此处的原型继承用我们上一章讲的使用一个空函数进行继承的方式更好.
当然,我们现在使用最多的就是这种二者混合用的方式了!
时间: 2024-12-28 08:36:46