最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

js中實現(xiàn)多態(tài)采用和繼承類似的方法

 更新時間:2014年08月22日 08:58:31   投稿:whsnow  
首先定義一個抽象類,其中調(diào)用一些虛方法,虛方法在抽象類中沒用定義,而是通過其具體的實現(xiàn)類來實現(xiàn)

多態(tài)的實現(xiàn)可以采用和繼承類似的方法。首先定義一個抽象類,其中調(diào)用一些虛方法,虛方法在抽象類中沒用定義,而是通過其具體的實現(xiàn)類來實現(xiàn)。

如下面的例子:

Object.extend=function(destination,source){ 
for(property in source){ 
destination[property]=source[property]; 
} 
return destination; 
} 
//定義一個抽象基類base,無構(gòu)造函數(shù) 
function base(){}; 

base.prototype={ 
initialize:function(){ 
this.oninit();//調(diào)用了一個虛方法 
} 
} 
function SubClassA(){ 
//構(gòu)造函數(shù) 
} 
SubClassA.prototype=Object.extend({ 
propInSubClassA:"propInSubClassA", 
oninit:function(){ 
alert(this.propInSubClassA); 
} 
},base.prototype); 

function SubClassB(){ 
//構(gòu)造函數(shù) 
} 
SubClassB.prototype=Object.extend({ 
propInSubClassB:"propInSubClassB", 
oninit:function(){ 
alert(this.propInSubClassB); 
} 
},base.prototype); 

var objA=new SubClassA(); 
objA.initialize();//輸出"propInSubClassA" 

var objB=new SubClassB(); 
objB.initialize();//輸出"propInSubClassB"

首先定義了一個抽象基類base,在base類的initialize方法中調(diào)用了oninit方法,但是基類中并沒用oninit方法的實現(xiàn)或者聲明。SubClassA和SubClassB類繼承自base類,并且分別采用了不同的方式對oninit方法進行實現(xiàn)。

相關(guān)文章

最新評論

绥宁县| 洛阳市| 平罗县| 黔西| 四川省| 衡水市| 潜江市| 肥乡县| 萍乡市| 宾阳县| 工布江达县| 镇坪县| 祁门县| 西峡县| 富民县| 峨边| 朔州市| 萍乡市| 信阳市| 花垣县| 四会市| 炎陵县| 绥阳县| 营山县| 昭觉县| 河源市| 铅山县| 新邵县| 阳江市| 东兴市| 平果县| 盱眙县| 应用必备| 喀喇| 中西区| 郎溪县| 五家渠市| 卓资县| 宜川县| 栾川县| 山阴县|