Welcome

首页 / 软件开发 / JAVA / ExtJS之面向对象编程基本知识

ExtJS之面向对象编程基本知识2010-01-06 cnblogs Jason.zhou1:支持命名空间

<script type="text/javascript">
// 定义 一个命名空间
Ext.namespace("Ext.wentao");
// 在命名空间上定义一个类
Ext.wentao.helloworld = Ext.emptyFn;
// 创建一个类的实例
new Ext.wentao.helloworld();
</script>

其中

Ext.wentao.helloworld = Ext.emptyFn;

等价于

Ext.wentao.helloworld = function(){};

2:支持类实例属性

<script type="text/javascript">
Ext.namespace ("Ext.wentao"); // 自定义一个命名空间
Ext.wentao.Person = Ext.emptyFn; // 在 命名空间上自定义一个类
// 为自定义的类 增加一个 name 属性,并赋值
Ext.apply (Ext.wentao.Person.prototype, {
name : "刘文涛"
});

var _person = new Ext.wentao.Person();// 实例化 自定义类
alert(_person.name);
_person.name = "张三";// 修改类name属性
alert(_person.name);

</script>

3:支持类实例方法

<script type="text/javascript">
Ext.namespace("Ext.wentao"); // 自定义 一个命名空间
Ext.wentao.Person = Ext.emptyFn; // 在命名空间上自定义一个类
// 演示 类实例方法
Ext.apply(Ext.wentao.Person.prototype, {
name : "刘文涛",
sex : "男",
print : function() {
alert(String.format("姓名:{0}, 性别:{1}", this.name, this.sex));
}
});

var _person = new Ext.wentao.Person();// 实例化 自定义类
_person.print();


</script>

4:支持类静态方法

<script type="text/javascript">

Ext.namespace("Ext.wentao"); // 自定义一个命名空间
Ext.wentao.Person = Ext.emptyFn; // 在命名空间上自定义一个类

// 演示类实例方法
Ext.apply(Ext.wentao.Person.prototype, {
name : " 刘文涛",
sex : "男",
print : function() {
alert (String.format("姓名:{0},性别:{1}", this.name, this.sex));
}
});

// 演示 类静态方法
Ext.wentao.Person.print = function(_name, _sex) {
var _person = new Ext.wentao.Person();
_person.name = _name;
_person.sex = _sex;
_person.print(); // 此处调用类 实例方法,上面print是类 静态方法
};

Ext.wentao.Person.print("张三", "女"); // 调用类 静态方法

</script>