日期:2014-05-16  浏览次数:20468 次

Thinking in ExtJs 面向对象思想(1)

1、支持命名空间
2、支持类实例属性和实例方法
3、支持类静态方法
4、支持构造方法
5、支持类继承
6、支持类实例方法重写
7、支持命名空间别名
8、支持类别名
9、支持事件队列

一:前三个思想。
??? 下面给出一个例子,来说明ExtJs是如何展示这三个思想的。
???? 建立一个js文件,我命名为ext-bingyu.js

//定义命名空间
Ext.namespace("Ext.bingyu");
//定义一个类
Ext.bingyu.Person = Ext.emptyFn;
//添加类的原型
Ext.apply(Ext.bingyu.Person.prototype,{
			//类实例属性
			name:"",
			sex:"",
			//类实例方法
			say:function(){
				return String.format("姓名:{0},性别:{1}",this.name,this.sex);
			}
			});
//添加类的静态方法
Ext.bingyu.Person.say = function(name,sex){
			var person = new Ext.bingyu.Person();
			person.name = name;
			person.sex = sex;
			return person.say();
		};		

?

页面调用代码如下:

?

//类实例属性和方法的演示
var person = new Ext.bingyu.Person();
person.name = "冰羽";
person.sex = "男";
alert(person.say());
//类静态方法的演示
alert(Ext.bingyu.Person.say("bingyu","男"));

?上面的例子已经涵盖了三个思想的基本方面。

?