代码描述:js模拟多态。js模拟多态效果简单介绍
本章节分享一段代码实例,它模拟实现了多态效果。 尽管javascript是一门面向对象的语言,但是它并没有多态效果,只能够通过模拟实现。 代码如下:
<script> 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(){ console.log(this.propInSubClassA); } },base.prototype); function SubClassB(){ //构造函数 } SubClassB.prototype=Object.extend({ propInSubClassB:"propInSubClassB", oninit:function(){ console.log(this.propInSubClassB); } },base.prototype); var objA=new SubClassA(); objA.initialize(); var objB=new SubClassB(); objB.initialize(); </script>
请绑定手机号,在继续操作
注意:只有绑定手机以后,才可使用网站全部功能