前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >[基础]Javascript中的继承示例代码

[基础]Javascript中的继承示例代码

作者头像
菩提树下的杨过
发布2018-01-22 17:06:27
7450
发布2018-01-22 17:06:27
举报

面向对象的语言必须具备四个基本特征:

1.封装能力(即允许将基本数据类型的变量或函数放到一个类里,形成类的成员或方法)

2.聚合能力(即允许类里面再包含类,这样可以应付足够复杂的设计)

3.支持继承(父类可以派生出子类,子类拥有父母的属性或方法)

4.支持多态(允许同样的方法名,根据方法签名[即函数的参数]不同,有各自独立的处理方法)

这四个基本属性,javascript都可以支持,所以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>
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2008-01-20 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档