function ClassX(){
this.messageX = "This is the X message. ";
if(typeof ClassX._initialized == "undefined"){
ClassX.prototype.sayMessageX = function(){
alert(this.messageX);
};
ClassX._initialized = true;
}
}
function ClassY(){
this.messageY = "This is the Y message. ";
if(typeof ClassY._initialized == "undefined"){
ClassY.prototype.sayMessageY = function(){
alert(this.messageY);
};
ClassY._initialized = true;
}
}
function ClassZ(){
ClassX.apply(this);
ClassY.apply(this);
this.messageZ = "This is the Z message. ";
if(typeof ClassZ._initialized == "undefined"){
// 使用zinherit工具包中的inheritFrom方法,实现多重继承,inferitFrom只会修改prototype的状态,而不会重新赋值
ClassZ.prototype.inheritFrom(ClassX);
ClassZ.prototype.inheritFrom(ClassY);
ClassZ.prototype.sayMessageZ = function(){
alert(this.messageZ);
};
ClassZ._initialized = true;
}
}
function myload(){
alert("cc");
var objZ = new ClassZ();
objZ.sayMessageX();
objZ.sayMessageY();
objZ.sayMessageZ();
}
zinherit简单的实现了多重继承,但使用inheritFrom后,objZ instanceof ClassY是无效的代码,因为这种方法根本不使用原型链,当然zinherit提供instanceOf方法来解决这个问题
objZ.instanceOf(ClassY); // return true
但更加复杂的继承操作,zinherit将无法完成,比如:父类的调用,方法重载等,但很明显,zinherit的使用很方便,也很简单
分享到:
相关推荐
js javascript zInherit 对象 继承
zinherit JavaScript zinherit JavaScript zinherit JavaScript zinherit JavaScript zinherit JavaScript zinherit JavaScript zinherit JavaScript zinherit JavaScript
这个是100个javascript小例子 各种效果 操作表单页面等小例子 很有用 项目中直接copy就可以用 同样学习javascript的更合适用这些来学习
浅析Javascript原型继承,浅析Javascript原型继承
300个JavaScript小例子300个JavaScript小例子300个JavaScript小例子
javascript 倒计时小例子,已做成对象,可直接使用
在JavaScript中继承是一个非常复杂的话题,比其他任何面向对象的语言中的继承都复杂得多。在大多数其他面向对象语言中,继承一个类只需使用一个关键字即可。与它们不同,在JavaScript中要想达到传承公用成员的目的,...
javaweb 注册小列子 ,javascript前段验证,
非常好的小例子,会给你的网站带来意想不到的效果
最新300个JavaScript小例 很多例子哦
自己总结的一些Javascript的Demo 1.表格隔行变色_焦点着色(高级) 2.多物体运动(整合) 3.高级运动(微博) 4.缓冲运动(右侧对联) 5.表格隔行变色_焦点着色(高级) 等等 代码不足之处,请多多指教
本文实例讲述了JavaScript实现多重继承的方法。分享给大家供大家参考,具体如下: 1. 定义一个空的父类构造函数,然后通过prototype的方式为该父类定义属性和方法 2. 定义一个空的子类的构造函数,然后将子类的原型...
javascript入门实用例子,是web工程,可以用eclipse直接导入,非常实用。
在真正的Web站点和应用程序中,几乎不可能创建名为ClassA和ClassB的类,更可能的是创建表示特定事物(如形状)的类。考虑本章开头所述的形状的例子,Polygon、Triangle和Rectangle类就构成了一组很好的探讨数据。
zinherit库(<script type="text/javascript" src="zinherit.js">)
javascript写的图表工具 原码和例子javascript写的图表工具 原码和例子javascript写的图表工具 原码和例子javascript写的图表工具 原码和例子javascript写的图表工具 原码和例子javascript写的图表工具 原码和例子
JavaScript基础知识例子.zipJavaScript基础知识例子.zip
理解Javascript原型继承原理
javascript经典小例子
JavaScript 使用小技巧练习,可以借鉴