1:支持命名空间
<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>
5:支持构造方法
<script type="text/javascript">
Ext.namespace("Ext.wentao"); //自定义一个命名空间
//构造方法
Ext.wentao.Person = function(_cfg){
Ext.apply(this,_cfg);
}
//演示类实例方法
Ext.apply(Ext.wentao.Person.prototype, {
print:function(){
alert(String.format("姓名:{0},性别:{1}",this.name,this.sex));
}
})
//演示 类静态方法
Ext.wentao.Person.print = function(_name,_sex){
var _person = new Ext.wentao.Person({name:_name,sex:_sex});
_person.print(); //此处调用类 实例方法,上面print是类 静态方法
}
Ext.wentao.Person.print("张三","女"); //调用类 静态方法
</script>
6:支持类继承
<script type="text/javascript">
Ext.namespace("Ext.wentao"); //自定义一个命名空间
//*******************父类*********************
//构造方法
Ext.wentao.Person = function(_cfg){
Ext.apply(this,_cfg);
}
//演示类实例方法
Ext.apply(Ext.wentao.Person.prototype, {
job:"无",
print:function(){
alert(String.format("姓名:{0},性别:{1},角色:{2}",this.name,this.sex,this.job));
}
})
//*******************子类1*********************
Ext.wentao.Student = function(_cfg){
Ext.apply(this,_cfg);
}
Ext.extend(Ext.wentao.Student,Ext.wentao.Person,{
job:"学生"
})
var _student = new Ext.wentao.Student({name:"张三",sex:"女"});
_student.print(); //调用 父类方法
</script>
7:支持类实例方法重写
<script type="text/javascript">
Ext.namespace("Ext.wentao"); //自定义一个命名空间
//*******************父类*********************
//构造方法
Ext.wentao.Person = function(_cfg){
Ext.apply(this,_cfg);
}
//演示类实例方法
Ext.apply(Ext.wentao.Person.prototype, {
job:"无",
print:function(){
alert(String.format("姓名:{0},性别:{1},角色:{2}",this.name,this.sex,this.job));
}
})
//*******************子类1*********************
Ext.wentao.Student = function(_cfg){
Ext.apply(this,_cfg);
}
//重写父类的 实例 方法
Ext.extend(Ext.wentao.Student,Ext.wentao.Person,{
job:"学生",
print:function(){
alert(String.format("{0}是一位{1}{2}",this.name,this.sex,this.job));
}
})
var _student = new Ext.wentao.Student({name:"张三",sex:"女"});
_student.print(); //调用 父类方法
</script>
8:支持命名空间别名
<script type="text/javascript">
Ext.namespace("Ext.wentao"); //自定义一个命名空间
Wt = Ext.wentao; //命名空间的别名
//*******************父类*********************
//构造方法
Wt.Person = function(_cfg){
Ext.apply(this,_cfg);
}
//演示类实例方法
Ext.apply(Wt.Person.prototype, {
job:"无",
print:function(){
alert(String.format("姓名:{0},性别:{1},角色:{2}",this.name,this.sex,this.job));
}
})
//*******************子类1*********************
Wt.Student = function(_cfg){
Ext.apply(this,_cfg);
}
//重写父类的 实例 方法
Ext.extend(Wt.Student,Ext.wentao.Person,{
job:"学生",
print:function(){
alert(String.format("{0}是一位{1}{2}",this.name,this.sex,this.job));
}
})
var _student = new Wt.Student({name:"张q三",sex:"女"});
_student.print(); //调用 父类方法
</script>
9:支持类别名
<script type="text/javascript">
Ext.namespace("Ext.wentao"); //自定义一个命名空间
Wt = Ext.wentao; //命名空间的别名
//*******************父类*********************
//构造方法
Wt.Person = function(_cfg){
Ext.apply(this,_cfg);
}
PN = Wt.Person; //类别名
//演示类实例方法
Ext.apply(PN.prototype, {
job:"无",
print:function(){
alert(String.format("姓名:{0},性别:{1},角色:{2}",this.name,this.sex,this.job));
}
})
//*******************子类1*********************
Wt.Student = function(_cfg){
Ext.apply(this,_cfg);
}
ST = Wt.Student;
//重写父类的 实例 方法
Ext.extend(ST,PN,{
job:"学生",
print:function(){
alert(String.format("{0}是一位{1}{2}",this.name,this.sex,this.job));
}
})
var _student = new ST({name:"张q三",sex:"女"});
_student.print(); //调用 父类方法
</script>
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/wwd252/archive/2009/01/12/3761236.aspx
分享到:
相关推荐
本篇文章将探讨EXTJS框架中的面向对象机制,特别是继承的概念,以及如何在实际开发中应用这些概念。 EXTJS是一个强大的JavaScript库,它提供了丰富的UI组件和数据绑定功能,适用于构建复杂的Web应用程序。在EXTJS中...
总结一下,这个示例展示了以下ExtJS面向对象开发的关键点: 1. **继承与扩展**:`PersonListGridPanel` 类继承自 `Ext.grid.GridPanel`,增加了自己的特性。 2. **组件组合**:使用了GridPanel、FormPanel和Window...
面向对象编程(OOP)是ExtJS框架的核心设计理念之一。通过采用面向对象的方法,开发者可以更好地组织代码结构,提高代码的复用性和维护性。 - **类与继承**: 在ExtJS中,可以通过定义类来创建组件,并通过继承机制...
.NET,全称Microsoft .NET Framework,是由微软公司开发的一种全面的、面向对象的开发平台,包含了一整套用于构建各种类型的应用程序的工具和服务。它提供了C#、VB.NET等编程语言,以及ASP.NET用于Web开发,使得...
这是本人自己总结最好用的通用后台管extjs+MySQL+...3、用到了Java面向对象的特征, 4、用到了API接口,实现了支付功能; 5、使用的MySQL+oracle+SQL server三种数据库的连接。 6、欢迎大家下载使用交流。qq:906735040
JAVA的强类型和面向对象特性使其在处理复杂业务时表现出色。 MYSQL是广泛使用的开源关系型数据库,对于中小规模的数据存储非常合适。在“图片文章管理项目”中,MYSQL可能包含了多个表,如文章表(包含文章ID、标题...
3. **ExtJS OOP**:详细介绍ExtJS如何实现封装、继承和多态等面向对象特性。 4. **配置选项**:介绍如何使用配置选项来初始化组件。 5. **Ext.apply()和Ext.applyIf()**:这两个方法用于合并对象,是ExtJS中常用的...
- **设计理念**:借鉴了Java Swing等桌面应用的设计理念,使得其组件模型和API设计更加符合面向对象的原则。 - **版本迭代**:从最初的版本开始,ExtJS不断更新迭代,加入了更多的功能和改进了性能,以适应不断变化...
ASP.NET提供了一种面向对象的编程模型,支持多种语言(如C#、VB.NET),并集成了IIS服务器,确保了高性能和安全性。在这个后台管理框架中,ASP.NET主要负责处理业务逻辑、数据访问和XML文件解析。 描述中提到,后台...
- **面向对象编程**:ExtJS鼓励使用面向对象的编程模式,便于代码的管理和维护。例如: ```javascript Ext.namespace('demo'); demo.User = Ext.extend(Ext.Panel, { getName: function() { // 实现方法 } })...
1. **ExtjsOOP基础**:Ext.js在2.0版本中加强了对面向对象编程的支持,文档中会介绍如何定义JavaScript类,以及如何使用Extjs命名空间和类的继承。这里也会提到Extjs的OOP特性和配置选项的使用方法。 2. **消息框的...
1. **Spring框架**:Spring是核心的依赖注入(DI)和面向切面编程(AOP)框架,它管理着应用中的对象和它们的生命周期。在登录功能中,Spring可以用来处理用户认证逻辑,如从数据库加载用户信息,验证用户名和密码的...
- **Extjs OOP**:深入探讨Extjs中面向对象编程的特点及优势。 - **配置(config)选项**:解释配置选项的作用及如何使用它们。 - **Ext.apply()和Ext.applyIf()**:对比这两个方法的功能差异及其应用场景。 #### 第...
总结来说,"ssh+extjs4整合开发"涉及到的技术栈是Java后端开发的强大组合,结合了Spring的灵活性、Struts2的MVC架构以及Hibernate的对象关系映射,再加上EXTJS4的富客户端能力。这种整合使得开发者能够构建出高效、...
最后,Extjs4框架允许开发者利用面向对象的编程方法来进行开发,MVC(Model-View-Controller)模式的采用,使得代码更容易管理和维护。MVC模式将应用程序分为三个核心组件,其中Model负责数据和业务逻辑,View负责...
- **继承机制**: 支持传统的面向对象编程中的继承特性,通过继承可以复用代码。 - **覆盖方法**: 子类可以覆盖父类的方法,实现更具体的功能。 #### 19. **EXT2概述** - **组件模型 (Component Model)**: 描述了...
总结来说,“extjs实现增删查改”涵盖了前端使用ExtJS组件进行数据操作,以及后端使用servlet、Spring和Hibernate进行数据处理的技术栈。这个过程涉及到了前端交互设计、数据模型管理、HTTP通信和数据库操作等多个...
3. **面向对象和组件化**:ExtJs采用了100%面向对象和组件化的编程思想,具有统一的语法结构和全局的命名空间。 4. **文档完善**:ExtJs提供了完整的文档支持,便于开发者学习和使用。 5. **模块化实现**:ExtJs支持...
总结来说,ExtJs显示类库是一个强大且全面的JavaScript框架,其丰富的组件库、数据管理机制以及面向对象的编程思想,使得开发人员能够构建出功能强大、用户界面丰富的Web应用。无论是在企业级应用还是小型项目中,...