国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

js中實現多態采用和繼承類似的方法

2019-11-20 14:14:54
字體:
來源:轉載
供稿:網友

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

如下面的例子:

Object.extend=function(destination,source){ for(property in source){ destination[property]=source[property]; } return destination; } //定義一個抽象基類base,無構造函數 function base(){}; base.prototype={ initialize:function(){ this.oninit();//調用了一個虛方法 } } function SubClassA(){ //構造函數 } SubClassA.prototype=Object.extend({ propInSubClassA:"propInSubClassA", oninit:function(){ alert(this.propInSubClassA); } },base.prototype); function SubClassB(){ //構造函數 } 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方法中調用了oninit方法,但是基類中并沒用oninit方法的實現或者聲明。SubClassA和SubClassB類繼承自base類,并且分別采用了不同的方式對oninit方法進行實現。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 搜索| 峡江县| 丁青县| 怀宁县| 卓尼县| 嘉义县| 永昌县| 古丈县| 平和县| 红桥区| 贵德县| 雅安市| 沽源县| 凌海市| 全椒县| 甘德县| 当雄县| 临夏县| 武城县| 连城县| SHOW| 仁寿县| 博爱县| 津市市| 句容市| 凤凰县| 潞西市| 镇江市| 南康市| 绥棱县| 金门县| 泰顺县| 呼和浩特市| 鄂托克旗| 威远县| 义马市| 榆社县| 通许县| 邢台县| 义乌市| 尚志市|