ext里面面向对象的设计:
//Ext.namespace("org.forever.util");
Ext.ns("org.forever.util");
//创建一个类A,继承Object类
//Ext上面说extend被废弃,请使用define方法
Ext.define('org.forever.util.A', {
extend: 'Object',
userName: '默认值',//属性
constructor: function(config){//构造函数
Ext.apply(this, config);
},
printInfo: function(){
alert("42" + this.userName);//如果在创建对象的时候有userName属性则有值
}
});
//类静态方法
org.forever.util.A.sum = function(a, b){//也可以使静态方法
return a + b;
}
var a = new org.forever.util.A({
userName: '陈均',
add: function(){
alert('动态添加方法')
}
});
//alert(a.userName);
//a.printInfo();
//a.add();
//alert(org.forever.util.A.sum(3,4));
//创建一个类B继承类A
Ext.define('org.forever.util.B', {
extend: 'org.forever.util.A',
show: function(){
alert("b.show=" + this.userName);
}
});
var b = new org.forever.util.B({
userName: 'aaaa'
});
//b.printInfo();
//b.show();
//创建一个类C继承类B
Ext.define('org.forever.util.C', {
extend: 'org.forever.util.B',
show: function(){
org.forever.util.C.superclass.show.call(this);//调用父类show方法
alert("c.show=" + this.userName);
}
});
var c = new org.forever.util.C();
c.show();