1、支持命名空间(Java里用的是包的概念)
Ext.namespace("Ext.ling"); //这句话相当于声明了一个命名空间
2、支持类实例属性
Ext.apply(Ext.ling.Person.prototype,{
name:"lingyibin"
}); //给Person类添加了name属性,并赋了值。
这里跟大家讲另一个东西,就是{ }和[ ]在js应用中的区别。
前者表示一个类,后者表示一个数组。因为类里面都有属性名,所以前者的格式一般都是
{property1:value1, property2:value2 ……}
3、类的实例方法
Ext.namespace("Ext.ling");
Ext.ling.Person = Ext.emptyFn;
Ext.apply(Ext.ling.Person.prototype,{
name:"",
sex:"",
print:function(){
alert(String.format("姓名:{0},性别:{1}",this.name,this.sex));
}
});
使用:
var person = new Ext.ling.Person();
person.name = "ling";
person.sex = "male";
person.print();
4、类的静态方法
Ext.ling.Person.print = function(_name,_sex){
var person = new Ext.ling.Person();
person.name = _name;
person.sex = _sex;
person.print();
}
5、构造方法
Ext.ling.Person = function(_cfg){
Ext.apply(this,_cfg);
}
Ext.ling.Person = function(_name,_sex){
var person = new Ext.ling.Person({name:_name,sex:_sex});
person.print();
}
Ext.apply(Ext.ling.Person.prototype,{
print:function(){
alert(String.format("姓名:{0},性别:{1}",this.name,this.sex));
}
});
使用:
var p = new Ext.ling.Person({name:"ling",sex:"男"});
p.print();
6、类继承
Ext.namespace("Ext.ling");
Ext.ling.Person = function(_cfg){ //父类
Ext.apply(this,_cfg);
};
Ext.apply(Ext.ling.Person.prototype, {
job:"Jobless",
print:function(){
alert(String.format("姓名:{0},性别:{1},角色:{2}",this.name, this.sex,this.job));
}
});
Ext.ling.Teacher = function(_cfg){ //子类
Ext.apply(this,_cfg);
}
Ext.extend(Ext.ling.Teacher,Ext.ling.Person, {job:"老师"}); //继承了父类,并给job赋了值
7、重写
Ext.extend(Ext.ling.Teacher,Ext.ling.person,{
print:function(){
alert("这个方法被我改写了!");
}
});
(这是我去年8月写的一篇文章,由于面试的需要把它转到这边来!)
分享到:
相关推荐
在JavaScript的世界里,面向对象(Object-Oriented Programming, OOP)是一种常用的设计模式,它允许我们通过类和对象来组织代码,实现代码的复用和模块化。本篇文章将探讨EXTJS框架中的面向对象机制,特别是继承的...
了解并掌握这些Ext的面向对象特性,有助于编写更高效、结构化的JavaScript代码,特别是在构建复杂的Web应用程序时。在实际的`ExtTest`项目中,这些概念会被广泛运用,以创建可复用、可维护的组件和模块。
JQury框架绝对是页面开发的首选,代码短小强悍,缺点就是... Javascript做面向对象开发的时候,总是会用到很多模拟面向对象特性的方法,这些方法就构成了支撑面向对象Javascript的核心代码,以下就是部分代码,其中参考
1. **Ext JS**:这是一种基于组件的JavaScript框架,它允许开发者使用面向对象的方式来构建复杂的Web UI。Ext JS的核心特性包括高度可定制的组件、数据绑定、数据网格、拖放功能、布局管理和丰富的API。通过这些特性...
EXT JS采用了面向对象的编程模式,支持类的继承和重写。这允许开发者在不修改原始代码的情况下,扩展和定制现有组件的功能。 **十八、补充资料与概述** 除了上述内容,EXT JS还提供了丰富的文档和社区资源,包括...
EXTJS 是一个基于 JavaScript 的富客户端框架,它提供了强大的组件模型和面向对象的编程方式,使得开发者能够构建复杂的 Web 应用程序。面向对象编程(Object-Oriented Programming, OOP)是EXTJS的核心特性之一,...
### JavaScript面向对象编程详解 #### 一、JavaScript与面向对象编程概述 JavaScript 是一种非常流行的脚本语言,它被广泛应用于网页开发之中。虽然通常情况下,开发者将其视为一种基于函数的语言,仅用来处理一些...
要掌握EXT JS开发,基础技能至关重要,包括JavaScript面向对象编程、HTML、DOM、CSS、JSON以及Ajax等。此外,通过实践EXT JS的官方示例和网友贡献的项目案例,能更深入理解和运用EXT JS。 综上所述,EXT JS培训资料...
本书从基础的JavaScript知识点开始,逐步过渡到Ext JS 4的面向对象编程概念,重点介绍了Ext JS的UI组件、布局以及核心功能,包括MVC架构、应用程序的主题与样式设计、以及如何通过网格、树形控件和图表等组件展示...
2. **类系统**:EXT使用面向对象的编程方式,"ext-base.js"中包含了类的创建、继承和实例化等机制,使得开发者可以方便地创建自定义组件。 3. **事件系统**:EXT的事件模型是其交互性的重要组成部分,"ext-base.js...
2. **性能优化**:Ext JS具有优秀的性能表现,其框架完全遵循面向对象的设计原则,并支持扩展。 3. **丰富的UI组件**:通过一系列可重用的对象和控件,极大地简化了Ajax开发过程。 #### 三、熟悉Ext JS ##### 跨...
Ext JS通过扩展JavaScript,提供了面向对象的编程方式,增强了其在构建复杂应用中的能力。 “web”标签表明,Ext JS主要用于Web应用的开发。它利用Ajax技术进行异步通信,实现页面的无刷新更新,极大地提升了用户...
- **面向对象的代码开发**:介绍了如何使用Ext JS编写面向对象的代码,包括类的定义、继承等。 - **复合组件的构建**:探讨了如何组合多个简单组件创建复杂功能的复合组件。 - **高级UI技术的应用**:讨论了如何利用...
EXT框架基于jQuery库,但扩展了更多面向对象的组件和布局管理功能。 EXT框架主要由以下几个核心概念构成: 1. **组件(Components)**:EXT框架的基础是组件,它们是可复用的UI元素,如按钮、表格、面板等。每个...
根据提供的文件信息,可以看出主题是关于ExtJS框架与面向对象编程的实现方式。然而,由于提供的部分内容似乎并不完整且存在一些非标准字符,这给直接提取有用信息带来了困难。因此,我们将基于标题、描述和标签中的...
这些概念同样适用于JavaScript,因为JavaScript是一种支持面向对象特性的语言。在ExtJS中,我们可以通过创建自定义组件(classes)来实现这些概念。 1. **封装**:在ExtJS中,我们可以创建类(class)并定义私有和...
JavaScript是EXT JS的基石,因此掌握JavaScript的基本语法和面向对象编程是使用EXT的前提。EXT JS 1.1虽然较为古老,但仍然包含了许多现代前端开发的理念,如MVC(Model-View-Controller)架构,这种架构模式有助于...
8. **面向对象的JavaScript**:文档中提及了JavaScript的作用域以及如何使用Ext JS进行面向对象的编程实践。 9. **跨平台支持**:Ext JS被设计为跨浏览器和跨平台,这意味着它可以在多种环境中运行而无需修改。 10...