Javascript中的继承代码示例
标签:
JavaScript
面向对象的语言必须具备四个基本特征:
1.封装能力(即允许将基本数据类型的变量或函数放到一个类里,形成类的成员或方法)
2.聚合能力(即允许类里面再包含类,这样可以应付足够复杂的设计)
3.支持继承(父类可以派生出子类,子类拥有父母的属性或方法)
4.支持多态(允许同样的方法名,根据方法签名[即函数的参数]不同,有各自独立的处理方法)
这四个基本属性,javascript都可以支持,所以javascript确实是一种弱类型的面向对象的语言,这里给出一个简单的类继承的代码。
<script type="text/javascript"> //父类ClassA function ClassA(sColor) { this.color = sColor; this.sayColor = function () { document.write("Color:" + this.color + "<br/>"); }; } //子类ClassB,继承自ClassA function ClassB(sColor,sName){ ClassA.call(this,sColor);//利用call函数,将ClassA的所有方法都赋给ClassB,即实现了继承 this.name = sName; this.sayName = function(){ document.write("Name:" + this.name + "<br/>"); } } var oClassA = new ClassA("Red"); oClassA.sayColor(); var oClassB = new ClassB("Blue","Jimmy.Yang"); oClassB.sayColor();//这里sayColor方法是从ClassA继承来的 oClassB.sayName();//这是ClassB中的新方法 /* call函数的演示示例 function sayColor(sPrefix, sSuffix) { alert(sPrefix + this.color + sSuffix); }; var obj = new Object(); sayColor.call(obj, "The color is ", ", a very nice color indeed. "); */ </script>
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦