面向对象的语言必须具备四个基本特征:
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>
1.封装能力(即允许将基本数据类型的变量或函数放到一个类里,形成类的成员或方法)
2.聚合能力(即允许类里面再包含类,这样可以应付足够复杂的设计)
3.支持继承(父类可以派生出子类,子类拥有父母的属性或方法)
4.支持多态(允许同样的方法名,根据方法签名[即函数的参数]不同,有各自独立的处理方法)
这四个基本属性,javascript都可以支持,所以javascript确实是一种弱类型的面向对象的语言,这里给出一个简单的类继承的代码












































