zoukankan      html  css  js  c++  java
  • 继承的几种方式

    方法一:对象冒充

       

        function Parent(username){
            this.username = username;
            this.hello = function(){
                alert(this.username);
            } }
        function Child(username,password){
        //通过以下3行实现将Parent的属性和方法追加到Child中,从而实现继承
        // 第一步:this.method是作为一个临时的属性,并且指向Parent所指向的对象,
        // 第二步:执行this.method方法,即执行Parent所指向的对象函数
        // 第三步:销毁this.method属性,即此时Child就已经拥有了Parent的所有属性和方法
            this.method = Parent;
            this.method(username);//最关键的一行
            delete this.method;
            this.password = password;
            this.world = function(){
                alert(this.password);
            } }
            var parent = new Parent("zhangsan");
            var child = new Child("lisi","123456");
            parent.hello();
            child.hello();
            child.world();

     方法二:call方式

     function Parent(username){
             this.username = username;
             this.hello = function(){
                 alert(this.username);
             } }
        function Child(username,password){
            Parent.call(this,username);
            this.password = password;
            this.world = function(){
                alert(this.password);
            } }
        var parent = new Parent("zhangsan");
        var child = new Child("lisi","123456");
        parent.hello();
        child.hello();
        child.world();

    方法三:apply方式

        function Parent(username){
            this.username = username;
            this.hello = function(){
                alert(this.username);
            }  }
        function Child(username,password){
            Parent.apply(this,new Array(username));
            this.password = password;
            this.world = function(){
                alert(this.password);
            }  }
        var parent = new Parent("zhangsan");
        var child = new Child("lisi","123456");
        parent.hello();
        child.hello();
        child.world();
  • 相关阅读:
    洛谷 P2700 逐个击破
    洛谷 P1503 鬼子进村
    洛谷 P1556 幸福的路
    洛谷 P1490 买蛋糕
    洛谷 P2507 [SCOI2008]配对
    code vs 3305 水果姐逛水果街Ⅱ
    通过idea远程调试
    【Cocos2d-x JavaScript Binding】
    ☀【SeaJS】SeaJS Grunt构建
    -_-#【Better Code】throttle / debounce
  • 原文地址:https://www.cnblogs.com/ruirui9820/p/6761532.html
Copyright © 2011-2022 走看看