国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

關(guān)于對(duì)象繼承的問題——利用空對(duì)象做中介

source / 2807人閱讀

摘要:先上例子動(dòng)物定義繼承函數(shù)這里的是個(gè)名稱,可以隨意命名執(zhí)行函數(shù)輸出結(jié)果是針對(duì)這個(gè)問題,在方法中要在中進(jìn)行體現(xiàn)對(duì)函數(shù)添加修改后的代碼感興趣打開連接工程師的福利導(dǎo)航動(dòng)物添加代碼定義繼承函數(shù)這里的是個(gè)名稱,可以隨意命名執(zhí)行函數(shù)輸出結(jié)果是動(dòng)物

先上例子:

function Animal(){

    this.type="動(dòng)物";

}

function Cat(name, color){

    this.name=name;

    this.color=color;

}

//定義繼承函數(shù)

function extend(Child, Parent){

    var Fn=function(){};
    
    Fn.prototype=Parent.prototype;

    Child.prototype=new Fn();
    
    Child.prototype.constructor=Child;

    Child.uber=Parent.prototype;//這里的uber是個(gè)名稱,可以隨意命名

}

//執(zhí)行函數(shù)
extend(Cat, Animal);

var cat_1=new Cat("kate", "white");

alert(cat_1.type);//輸出結(jié)果是undefined

針對(duì)這個(gè)問題,在extend方法中uber要在Cat中進(jìn)行體現(xiàn)
對(duì)Cat函數(shù)添加
Cat.uber.constructor.call(this);

修改后的代碼(感興趣打開連接---工程師的福利導(dǎo)航):

function Animal(){

    this.type="動(dòng)物";

}

function Cat(name, color){
    
    Cat.uber.constructor.call(this); //添加代碼
    
    this.name=name;

    this.color=color;

}

//定義繼承函數(shù)

function extend(Child, Parent){

    var Fn=function(){};
    
    Fn.prototype=Parent.prototype;

    Child.prototype=new Fn();
    
    Child.prototype.constructor=Child;

    Child.uber=Parent.prototype;//這里的uber是個(gè)名稱,可以隨意命名

}

//執(zhí)行函數(shù)
extend(Cat, Animal);

var cat_1=new Cat("kate", "white");

alert(cat_1.type);//輸出結(jié)果是   動(dòng)物

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/80023.html

相關(guān)文章

  • 關(guān)于對(duì)象繼承問題——利用對(duì)象中介

    摘要:先上例子動(dòng)物定義繼承函數(shù)這里的是個(gè)名稱,可以隨意命名執(zhí)行函數(shù)輸出結(jié)果是針對(duì)這個(gè)問題,在方法中要在中進(jìn)行體現(xiàn)對(duì)函數(shù)添加修改后的代碼感興趣打開連接工程師的福利導(dǎo)航動(dòng)物添加代碼定義繼承函數(shù)這里的是個(gè)名稱,可以隨意命名執(zhí)行函數(shù)輸出結(jié)果是動(dòng)物 先上例子: function Animal(){ this.type=動(dòng)物; } function Cat(name, color){ ...

    hersion 評(píng)論0 收藏0
  • 關(guān)于對(duì)象繼承問題——利用對(duì)象中介

    摘要:先上例子動(dòng)物定義繼承函數(shù)這里的是個(gè)名稱,可以隨意命名執(zhí)行函數(shù)輸出結(jié)果是針對(duì)這個(gè)問題,在方法中要在中進(jìn)行體現(xiàn)對(duì)函數(shù)添加修改后的代碼感興趣打開連接工程師的福利導(dǎo)航動(dòng)物添加代碼定義繼承函數(shù)這里的是個(gè)名稱,可以隨意命名執(zhí)行函數(shù)輸出結(jié)果是動(dòng)物 先上例子: function Animal(){ this.type=動(dòng)物; } function Cat(name, color){ ...

    caohaoyu 評(píng)論0 收藏0
  • Javascript面向對(duì)象編程(二):構(gòu)造函數(shù)繼承

    摘要:動(dòng)物還有一個(gè)貓對(duì)象的構(gòu)造函數(shù)。這顯然會(huì)導(dǎo)致繼承鏈的紊亂明明是用構(gòu)造函數(shù)生成的,因此我們必須手動(dòng)糾正,將對(duì)象的值改為。這是很重要的一點(diǎn),請(qǐng)務(wù)必注意如果替換了對(duì)象,下一步必然是為新的對(duì)象加上屬性,并將這個(gè)屬性指回原來的構(gòu)造函數(shù)。 原文鏈接 現(xiàn)在有一個(gè)動(dòng)物對(duì)象的構(gòu)造函數(shù)。 function Animal() { this.species = 動(dòng)物; } 還有一個(gè)貓對(duì)象的構(gòu)造函數(shù)。 fun...

    longmon 評(píng)論0 收藏0
  • javascript對(duì)象繼承

    摘要:的構(gòu)造函數(shù)是什么它是一個(gè)普通的函數(shù)它內(nèi)部用了關(guān)鍵字它有一個(gè)屬性,這個(gè)是一個(gè)對(duì)象當(dāng)然,其實(shí)每一個(gè)函數(shù)都有屬性這個(gè)上面是可以被繼承的屬性可被繼承的屬性以上是一個(gè)從原型對(duì)象生成實(shí)例對(duì)象的例子。 1: JavaScript的構(gòu)造函數(shù)是什么? 1: 它是一個(gè)普通的函數(shù) 2: 它內(nèi)部用了this關(guān)鍵字 3: 它有一個(gè)prototype屬性,這個(gè)prototype是一個(gè)對(duì)象(當(dāng)然,其實(shí)每一個(gè)函數(shù)都有...

    jone5679 評(píng)論0 收藏0
  • Java23種設(shè)計(jì)模式與J2EE設(shè)計(jì)模式

    摘要:這個(gè)模式感覺一一般和工廠模式一起使用的比較多比較方便結(jié)構(gòu)型模式這些設(shè)計(jì)模式關(guān)注類和對(duì)象的組合。設(shè)計(jì)模式這些設(shè)計(jì)模式特別關(guān)注表示層。 設(shè)計(jì)模式的的六大原則: 學(xué)習(xí)設(shè)計(jì)模式之前最好先了解一下設(shè)計(jì)模式的設(shè)計(jì)原則: 1. 開閉原則(open close principle) 開放即指對(duì)擴(kuò)展開放,對(duì)修改關(guān)閉 簡(jiǎn)而言之,就是擴(kuò)展功能的時(shí)候應(yīng)該盡量的不修改原有的代碼。 2. 里氏代換原則(lisko...

    andot 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<