浅谈面向对象继承

顾名思义继承讲的通俗点就是,儿子继承老子的财产。面向对象里面也和这个原理差不多。面向对象里有个强大的关键字:call() ,它能把父级有的照搬不误全搬到自己里面。

具体用法:

...............................................................................................................................................................................................................................

例 一,

         function A(){

              this.num=666;

             

        }

A.prototype.show=function(){

          alert(this.num)

}

      function B(){    

            A.call(this)   //如果把这句话注释掉的话,下面弹出的就是undefined

                              //因为B这个类没有A类的那个属性

    }

var obj=new B(); 

alert(obj.num)     //弹出来666;因为B继承了A的属性

...............................................................................................................................................................................................................................

例二,

  function A(){

           this.abc=500;

  }

 A.prototype.sun=function(){

        alert(this.abc);

}

function B(){

     A.call(this)

}  

for(var i in A.prototype){                      //本来B没有sun这个方法就是通过A的原型上继承过来的方法

    B.prototype[i]=A.prototype[i]

}

var obj=new B();

obj.sun//弹出500

...............................................................................................................................................................................................................................

面向对象继承说明了子类继承了父类的属性和方法。而不是子类自己具备这个方法(就好比如你老子的财产并不是你自己打拼来的,而是通过继承才有你老子的财产)

这个比喻有点不恰当,请原谅!

原文地址:https://www.cnblogs.com/ruanwei/p/6430010.html