基于jQuery,实现JS面向对象编程
//接口1
var?IClassName?=?{
????????IgetName:function(){
?????????????getName.apply(this);
????????},
????????IsetName:function(){
????????????setName.apply(this,arguments);
????????}
}
//接口2
var?IAlertName?=?{
????????IAlert:function(){
????????????printName.apply(this);
????????}
}
//父类
var?superClass?=?function(){
????????name?=?"superClass";
}
//子类
var?subClass?=?function(){
????????//实现接口1方法
????????getName?=?function(){
????????????return?name;
????????}
????????setName?=?function(_name){
????????????name?=?_name;
????????}
????????//实现接口2方法
????????printName?=?function(){
????????????alert(name);
????????}
}
//让子类继承父类
subClass.prototype?=?new?superClass();
//实现接口
?jQuery.extend(subClass.prototype,IClassName,IAlertName);
//子子类
var?childClass?=?function(){
????????this.show?=?function(){
????????????alert(name+"?show");
????????}
}
//使用该类
var?s?=?new?subClass();
//s.IsetName("ddd");?
//s.IAlert();
//让子子类继承子类
childClass.prototype?=?new?subClass();
var?c?=?new?childClass();
c.IAlert();
c.IsetName("yyyy");
c.show();
?
?
---转载 http://www.cnblogs.com/loverjohni/articles/1516302.html
1 楼 wang_youp 2011-01-16 好帅气的用法啊,没用过!