当前位置: 代码迷 >> Web前端 >> Ext(六)――定义类和类的继承
  详细解决方案

Ext(六)――定义类和类的继承

热度:99   发布时间:2012-10-10 13:58:11.0
Ext(6)――定义类和类的继承

定义一个类 主要有两种方法,方法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>
  相关解决方案