Ext.onReady(function() { //定义Person类 var Person = function(name, age) { this.name = name; this.age = age; this.hear = "头发" this.addEvents("walk", "eat", "sleep"); } //Person继承Ext.util.Observable Ext.extend(Person, Ext.util.Observable, { showMsg: function(event) { return this.name + ':' + this.age + "有很多" + this.hear; } }); //定义Man类 var Man = function(o) { Man.superclass.constructor.call(this, o.name, o.age); this.huzi = o.huzi; } Ext.extend(Man, Person, { showOther: function() { return "我有" + this.huzi; } }); var m = new Man({ name: "zoujp", age: 28, huzi: "胡子" }); alert(m.name); alert(m.hear); //继承Person的属性 alert(m.showOther()); //调用自己的方法 alert(m.showMsg()); //继承Person的方法 m.on("walk", function() { alert(m.name + "走过来了"); }); m.fireEvent("walk"); //触发walk事件 m.on("eat", function(a, b, c) { alert(m.name + "吃" + a + "," + b + "," + c); }); m.fireEvent("eat", "早饭", "中饭", "晚饭"); //触发eat事件,传参数 });