定义一个类
主要有两种方法,方法1是直接在类后面进行类的定义
com.tiantian.test.Person = function() {//定义一个对象
this.name = "默认名称";
this.age = 0;
this.country = "中国";
}
方法2是使用Ext自己定义的define方法进行定义:
Ext.define("com.tiantian.test.Person1",{
name: "person1",
age: 30
});
类的继承:
类的继承主要是在定义类的时候指定其extend属性指向其需要继承的类
代码:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>05_inherit.html</title>
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="this is my page">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<!--<link rel="stylesheet" type="text/css" href="./styles.css">-->
<script type="text/javascript" src="../ext4/ext-all-debug.js"></script>
<script type="text/javascript">
Ext.onReady(function() {
Ext.namespace("com.tiantian.test");
com.tiantian.test.Person = function() {//定义一个对象
this.name = "默认名称";
this.age = 0;
this.country = "中国";
}
//也可以这样定义一个对象
Ext.define("com.tiantian.test.Person1",{
name: "person1",
age: 30
});
Ext.define("com.tiantian.test.Student",{
extend: "com.tiantian.test.Person",//表示继承自哪个类
constructor: function(name, age) {//构造方法
this.name = name;
this.age = age;
},
role: "学生",
country: "新加坡",
getRole: function() {
return this.role;
}
});
Ext.define("com.tiantian.test.Teacher",{
extend: "com.tiantian.test.Person",
country: "马来西亚",
role: "老师"
});
var student = new com.tiantian.test.Student("张三",3);
alert("name:"+student.name+" age:"+student.age+" role:"+student.role+student.getRole()+" country:"+student.country);
var person1 = new com.tiantian.test.Person1();
alert(person1.name);
var teacher = new com.tiantian.test.Teacher();
teacher.name = "李四";
teacher.age = 30;
alert("name:"+teacher.name+" age:"+teacher.age+" role:"+teacher.role+" country:"+teacher.country);
});
</script>
</head>
<body>
This is my HTML page. <br>
</body>
</html>
分享到:
相关推荐
本篇将详细介绍Hibernate继承映射的第一种策略——每棵类继承树对应一张表,即单一表继承策略。 ### 单一表继承策略 在单一表继承策略中,所有类层次结构中的实例都存储在同一张数据库表中。这种策略通过在表中...
例如,我们可以创建一个名为`Ux.Grid.ProgressColumn`的新类,它继承自`Ext.grid.Column`,并包含我们刚才讨论的渲染逻辑。 标签中的"ext grid progress"暗示了这个话题与EXT Grid的进度条功能相关,这意味着在实际...
- **定义模型**:通过继承`Ext.data.Model`类来定义模型。可以在模型中定义字段、验证规则等。 - **关联关系**:模型可以定义与其他模型的关系,如一对一、一对多等关联关系。 - **数据绑定**:模型可以与用户界面...
4.4.3 所有继承类的基类:ext.base / 151 4.4.4 实现动态加载:ext.loader / 151 4.4.5 管理类的类:ext.classmanager / 159 4.4.6 类创建的总结 / 161 4.5 动态加载的路径设置 / 163 4.6 综合实例:页面...
`GridPanel` 类继承自 `Panel` 类,并且它的 `xtype` 为 `grid`。 要创建一个 `GridPanel`,首先需要定义列信息和数据存储器(`Store`)。列信息通过 `Ext.grid.ColumnModel` 定义,而数据存储器则通过 `Ext.data....
第四部分 Ext 扩展和Ext插件 第9章 Ext 扩展 254 9.1 利用Ext.extend实现继承 254 9.2 与Ext扩展相关的预备知识 256 9.2.1 定义命名空间 256 9.2.2 重写构造函数 257 9.2.3 继承组件的一些准备 257 9.2.4 常用的辅助...
- **JavaScript类的定义**: 在ExtJS中,可以通过特定的方法来定义类,这些类可以被继承并扩展。 - **ExtJS命名空间的定义**: 命名空间是ExtJS中组织代码的一种方式,它有助于避免全局变量的污染。 - **配置...
- **类与对象**:Ext采用面向对象的设计思想,支持类的定义和实例化。 - **继承与多态**:通过继承机制实现代码复用,并支持多态性以提高组件的灵活性。 **6. 特效与动画** - **过渡效果**:为用户界面添加平滑的...
它提供了丰富的UI组件,包括我们今天要讨论的主题——“Ext树例子”。Ext树(Tree)是一种数据结构,它呈现为层次化的节点集合,常用于展示具有层级关系的数据。在本篇文章中,我们将深入探讨Ext树的基本概念、其...
在Ext JS中,实现拖放功能的核心在于继承并实现特定的类,如`DragSource`和`DropTarget`。 #### 2.1 DragSource - **定义**: `DragSource`类提供了基本的拖动功能。 - **使用**: 通过继承`DragSource`类并重写其...
- **命名空间**:使用`Ext.namespace`定义命名空间,例如`Ext.namespace("Ext.cc")`。 - **对象创建**:可以通过传统的JavaScript语法创建对象,然后利用`Ext.apply`方法添加额外的属性和方法。 ```javascript Ext...
本节介绍了一种特殊的类加载器——编译时类加载器。这类加载器能够在加载类之前自动编译源代码。这对于动态语言或需要即时编译的场景非常有用,比如当开发者希望在运行时修改某些行为而不需要重新编译整个项目时。 ...
14.1 利用Ext.extend实现继承 14.2 与ExtJS扩展相关的预备知识 14.2.1 定义命名空间 14.2.2 使用xtype 14.3 用户扩展和插件 14.3.1 编写自定义用户扩展 14.3.2 常用插件UploadDialog 14.3.3 常用插件...
`Tags.js`文件很可能是实现Tags控件逻辑的核心部分,它可能定义了一个名为`Tags`的类,该类继承自`Ext.DataView`,并添加了特有的功能,比如添加、删除标签,以及处理用户输入等。同时,它可能还提供了一些预定义的...
- **示例**: 使用 `Ext.Fx` 和 `Ext.Element` 类中的动画函数实现动态效果。 #### 五、元素操作与模板 **5.1 元素操作** - **工具**: `Ext.DomHelper` 类提供了创建、操作 DOM 元素的方法。 - **示例**: `Ext....
14.1 利用Ext.extend实现继承 14.2 与ExtJS扩展相关的预备知识 14.2.1 定义命名空间 14.2.2 使用xtype 14.3 用户扩展和插件 14.3.1 编写自定义用户扩展 14.3.2 常用插件UploadDialog 14.3.3 常用插件...