<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//ZH-CN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html">
<link rel="stylesheet" type="text/css" href="../lib/ext2.2/resources/css/ext-all.css" />
<script type="text/javascript" src="../lib/ext2.2/ext-base.js"></script>
<script type="text/javascript" src="../lib/ext2.2/ext-all.js"></script>
<script type="text/javascript" src="../lib/ext2.2/ext-lang-zh_CN.js"></script>
</head>
<body>
<script>
/**
* extend( Object subclass, Object superclass, [Object overrides] ) : void
从superclass类继承subclass,overrides参数是要重载的方法列表,详见override
*
*/
Ext.onReady(function(){
/**
* 父类
* @param {Object} id
*/
var SuperClass = function(id){
this.id = id;
}
/**
* 生名两个方法
*/
SuperClass.prototype = {
toString : function(){
return this.id;
},
toOK : function(){
return "OK:" + this.id;
}
}
/**
* 子类,准备继承SuperClass
* @param {Object} id
*/
var MyClass = function(id){
MyClass.superclass.constructor.call(this,id);
}
/**
* 从SuperClass继承
*/
Ext.extend(MyClass,SuperClass,{
// 覆盖SuperClass中的toString方法
toString : function(){
return String.format("MyClass:{0}",this.id)
}
});
// --------- 测试代码 ----------
var obj1 = new SuperClass("obj1");
alert(obj1.toString());
var obj2 = new MyClass("obj2");
alert(obj2.toString()); // 显示结果为MyClass中的toString执行结果
alert(obj2.toOK()); // 调用父类的toOK
});
</script>
</body>
</html>