var self = this;
var statics = self.statics();//所在类的静态成员(instance.statics():跟着所在类走,在哪个类中,就返回哪个类中的静态成员statics)
var clazz = self.self;//由类的实例获取类的引用(instance.self:跟着类的实例走,instance是哪个类的实例,instance.self就返回哪个类的引用)
Ext.define('org.pine.some.Dog',{
statics:{//静态成员
instanceCount:0,//实例
species:'dog'//物种
},
config:{
},
constructor:function(config){
var self = this;
self.initConfig(config);
var statics = self.statics();//所在类的静态成员(instance.statics():跟着所在类走,在哪个类中,就返回哪个类中的静态成员statics)
console.info('statics.species:',statics.species);
var clazz = self.self;//由类的实例获取类的引用(instance.self:跟着类的实例走,instance是哪个类的实例,instance.self就返回哪个类的引用)
console.info('clazz.species:',clazz.species);
statics.instanceCount++;
self.callParent(arguments);
},
/**
* 克隆实例
*/
clone:function(){
var self = this;
var clazz = self.self;//由类的实例获取类的引用
var instance = new clazz();//通过类的引用产生类的实例
var statics = self.statics();//所在类的静态成员
instance['species']=statics.species;//添加属性
return instance;
}
});