创建基类与子类, 实现继承

BaseClass

 

//类名约定:作为类, 首字母必须大写

//创建基类的构造函数, 主要完成变量初始化任务, 如下:

function BaseClass(a,b)  

{

       this.a=a;

       this.b=b;

}

//this.a,this.b 都为基类属性, 同样可这样创建属性, 如下:

BaseClass.prototype.c="c value";

 

//创建基类的方法 showA,ShowB,showC, 如下:

BaseClass.prototype.showA=function()

{

    alert(this.a);

}

BaseClass.prototype.showB=function()

{

    alert(this.b);

}

BaseClass.prototype.showC=function()

{

    alert(this.c);

}

 

var myBase=new BaseClass("a value","b value");

 

myBase.showA();

myBase.showB();

myBase.showC();

ChildClass

 

//创建子类构造函数

function ChildClass(a,b){

    BaseClass.call(this,a,b);     //基类赋值, 类似 ChildClass(object a,object b):base(a,b)

                                           //如不调用call, 在子类中, a和b的值为 undefined, 除非通过属性赋值.

}

 

//子类继承基类, 由于 ChildClass 的原型对象, 可作用于所有ChildClass实例化对象.

ChildClass.prototype=new BaseClass();  //形式参数不一定等于实际参数, 可参见arguments

 

 var myChild=new ChildClass("a child value","b child value");

 

myChild.showA();

myChild.showB();

myChild.showC();

posted @ 2011-12-20 17:34  Yu  阅读(472)  评论(0编辑  收藏  举报