【www.gdgbn.com--js教程】

 
首先,我们建立一个parenizor类,它有成员 value的get和set方法,还有一个会将value包装在括号内的tostring方法。

function parenizor(value) {
this.setvalue(value);
}
parenizor.method("setvalue", function (value) {
this.value = value;
return this;
});
parenizor.method("getvalue", function () {
return this.value;
});
parenizor.method("tostring", function () {
return "(" + this.getvalue() + ")";
});

实现代码

 

function zparenizor(value) {
this.setvalue(value);
}
zparenizor.inherits(parenizor);
zparenizor.method("e;tostring"e;, function () {
if (this.getvalue()) {
return this.uber("tostring");
}
return "-0-";
});

类继承是一种“是……”的关系,而寄生继承是一个关于“原是……而现在是……”的关系。构造器在对象的构造中扮演了大量的角色。注意uber (代替super关键字)对特权方法仍有效。
类扩展
网页特效的动态性让我们可以对一个已有的类添加或替换方法。我们可以在任何时候调用方法。我们可以随时地扩展一个类。继承不是这个方式。所以我们把这种情况称为“类扩展”来避免和java的extends──也叫扩展,但不是一回事──相混淆。

 

本文来源:http://www.gdgbn.com/wangyezhizuo/28150/