zoukankan      html  css  js  c++  java
  • es5中的组合继承原理

    //父构造函数
            function Father(uname,age){
                //this 指向父构造函数实列
                this.uname = uname;
                this.age = age;
            };
            Father.prototype.money = function(){
                console.log(1000000);
            }



            //子构造函数
            //继承父类方法
            son.prototype = new Father;
            //修改constructor指向问题,使其指向原来的构造函数;
            son.prototype.constructor = Son;



            function Son(uname,age,score){
                //改变this指向,继承父类属性 
                Father.call(this,uname,age);
                this.score = score;
            }
      
      // 属性继承是通过call()调用函数,修改this指向来实现的
      //方法继承时通过中间对于父类的实例化赋值给子类原型来实现的
      
      //注意:不能通过直接把父类原型赋值给子类原型来实现,因为这样子父类原型会指向同一个地址,成为了共享,而不是继承
      //详解如下图;
     
  • 相关阅读:
    【模板】多项式开根(加强版)
    【模板】多项式幂函数 (加强版)
    Codeforces Round #628 (Div. 2) 总结
    [TJOI2017] 不勤劳的图书管理员
    [HNOI2015] 接水果
    [USACO3.4] Raucous Rockers
    [CF1268B] Domino for Young
    Linux提权小结
    weblogic漏洞练习
    SSL/TLS 安全测试
  • 原文地址:https://www.cnblogs.com/xu3241/p/13265846.html
Copyright © 2011-2022 走看看