我对Ext.extend这个函数没太搞懂,就去看了它的源代码,结果更加不明白了,谁能帮我解释一下,非常感谢!//API文档
extend( Object subclass, Object superclass, [Object overrides] ) : void
Extends one class with another class and optionally overrides members with the passed literal. This class also adds the function "override()" to the class that can be used to override members on an instance.
Parameters:    * subclass : Object
      The class inheriting the functionality
    * superclass : Object
      The class being extended
    * overrides : Object
      (optional) A literal with membersReturns:    * void//相关源代码
Ext.extend = function (sb,sp,overrides){
if(typeof sp == "object"){
overrides = sp;
sp = sb;
sb = function(){
sp.apply(this, arguments);
};
}
var F = function(){}, sbp, spp = sp.prototype; //这句等价与什么?
F.prototype = spp;
sbp = sb.prototype = new F;
sbp.constructor = sb;
sb.superclass = spp;
if(spp.constructor == Object.prototype.constructor){
spp.constructor = sp;
}
sb.override = function(o){
Ext.override(sb,o);
}
sbp.override = io;
Ext.override(sb, overrides);
return sb;
}Ext.override = function (origclass, overrides){
if(overrides){
var p = origclass.prototype;
for(var method in overrides){
p[method] = overrides[method];
}
}
}