ExtJS入门之一 类与继承

简介:

在项目中使用ExtJS已经有一段时间了, 对于这个庞大的Script类库有了一定的了解, 在Ext的使用上也有了一定的经验, 现将这些经验做一下总结, 作为一个入门材料给大家分享。 对于Ext库, 不要被它的庞大所吓倒, 只要静下心来看SDK, 多做一些练习, 还是很容易上手的。

ExtJS 中的类与继承

  在Ext下, 定义一个JavaScript类似乎没有什么特别的, 可以直接声明一个构造函数, 并使用关键字new来进行初始化。 有一点值得注意的是在Ext中频繁出现的Singleton类, 普遍定义为:

image_thumb6

然后就可以直接调用Foo的方法了, 其实这段代码可以理解为

image_thumb9 
这样,就容易理解了。
谈到类和继承, 有几个函数必须注意, Ext.apply、 Ext.applyIf和Ext.extend:
  1. Ext.apply(obj, config, [defaults]) 将config对象的所有属性都复制到另一个对象obj上, 第三个参数defaults可以用来提供默认值, 不过通常指用前两个参数就够了。 这个函数主要用在构造函数中, 用来将配置复制到对象上。
  2. Ext.applyIf(obj, config) 和Ext.apply的功能类似, 唯一不同的是, 这个函数只会将config对象中有, 而obj对象中没有的属性复制到obj上。
  3. Ext.extend(subclass, superclass, [overrides]) 用来继承已有的类, 通常的使用方法是
    var SubClass = function() {
       SubClass.superclass.constructor.call(this);
    };
    Ext.extend(SubClass, BaseClass, {
       newMethod : function() {},
       overriddenMethod : function() {}
    };
    在上面的代码中, SubClass继承自BaseClass,  添加了新的方法newMethod, 重写了overriddenMethod方法。
     
个人认为, 要扎实的掌握ExtJS, 并且能够对原有类库进行扩展, 掌握以上的方法是必须的, 也是入门的必经之路。

张志敏所有文章遵循创作共用版权协议,要求署名、非商业 、保持一致。在满足创作共用版权协议的基础上可以转载,但请以超链接形式注明出处。

本博客已经迁移到 GitHub , 围观地址: http://beginor.github.io/

本文转自张志敏博客园博客,原文链接:http://www.cnblogs.com/beginor/archive/2008/03/01/1086910.html ,如需转载请自行联系原作者
相关文章
|
8月前
|
JavaScript 前端开发
js开发:请解释原型继承和类继承的区别。
JavaScript中的原型继承和类继承用于共享对象属性和方法。原型继承通过原型链实现共享,节省内存,但不支持私有属性。
62 0
|
Java C++
C++进阶之继承(下)
在 C++ 中,友元关系是不继承的,这意味着基类的友元不能访问派生类的私有和保护成员。 如果一个类被声明为另一个类的友元,那么这个友元类可以访问该类的私有和保护成员。然而,这种访问权限不会被继承到派生类中。即使基类的成员函数被声明为子类的友元,也不能访问子类的私有和保护成员。
|
7月前
|
C++
C++继承的相关知识点
C++继承的相关知识点
36 0
|
8月前
|
存储 安全 Java
【C++进阶】1. 继承
【C++进阶】1. 继承
58 3
|
安全 编译器 C++
C++进阶之继承(上)
在C++中,继承是一种面向对象编程的重要概念,它允许一个类(称为子类或派生类)从另一个类(称为父类、基类或超类)那里继承属性和行为。继承是实现代码重用、构建层次结构以及实现多态性的基础。
|
算法 Python
【Django学习】(十三)Mixins_各种具体通用类&APIView_ViewSet_GenericViewSet_ModelViewSet类视图继承的父类区别(上)
【Django学习】(十三)Mixins_各种具体通用类&APIView_ViewSet_GenericViewSet_ModelViewSet类视图继承的父类区别
【Django学习】(十三)Mixins_各种具体通用类&APIView_ViewSet_GenericViewSet_ModelViewSet类视图继承的父类区别(下)
【Django学习】(十三)Mixins_各种具体通用类&APIView_ViewSet_GenericViewSet_ModelViewSet类视图继承的父类区别(下)
|
安全 C++
【C++ 进阶】继承
【C++ 进阶】继承
114 0
|
安全 Java 编译器
C++进阶】一、继承(总)
目录 一、继承的概念及定义 1.1 继承概念 1.2 继承定义 1.3 继承基类成员访问方式的变化 二、基类和派生类对象赋值转换 三、继承中的作用域 四、派生类的默认成员函数 五、继承与友元 六、继承与静态成员 七、菱形继承及菱形虚拟继承 7.1 继承的分类 7.2 菱形虚拟继承 7.3 菱形虚拟继承原理 八、继承总结
92 0
C++进阶】一、继承(总)
|
C++
【C++知识点】继承
【C++知识点】继承
70 0