文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>js掺元类的实现

js掺元类的实现

时间:2011-06-03  来源:liyatang

掺元是个奇特的方法,与平时遇到的继承有点不同。在C++和Python这类语言中允许子类继承多个父类。我们也可以把掺元类式看成是多亲继承。

顾名思义,掺元就是往类中添加额外的成员加以扩充。

我们这样定义父类

var Person = function(){
    this.name = 'default name';
} 
Person.prototype = {
    getName : function(){
        return this.name;
    } 
}

掺元类,输出类的所有成员

var Mixin = function(){};
Mixin.prototype = {
    serialize : function(){
        var output = [];
        for(key in this){
            output.push(key + " : " + this[key]);
        }
        return output.join(',');
    }
}

接下来弄个函数实现他们的继承关系

function augment(reciveClass, giveClass){
    for(method in giveClass.prototype){
        if(!reciveClass.prototype[method]){
            reciveClass.prototype[method] = giveClass.prototype[method];
        }
    }
}
augment(Person, Mixin);

var p = new Person();
alert(p.serialize());

这样子Person就有了serialize 方法了。

掺元类更适合用一些方法扩充一个类,类式与多亲继承。不过这种方案适用的场合不多,只有那些彼此大不相同的各种类中都派上用场的方法才适合共享。

相关阅读 更多 +
排行榜 更多 +
找茬脑洞的世界安卓版

找茬脑洞的世界安卓版

休闲益智 下载
滑板英雄跑酷2手游

滑板英雄跑酷2手游

休闲益智 下载
披萨对对看下载

披萨对对看下载

休闲益智 下载