WEB开发网
开发学院网页设计JavaScript Javascript乱弹设计模式系列(2) - 抽象工厂以及工... 阅读

Javascript乱弹设计模式系列(2) - 抽象工厂以及工厂方法模式(Factory)

 2010-09-14 13:35:26 来源:WEB开发网   
核心提示: 游客只能进行简单的查看博客的文章,个人资料等等;博客会员还可以对自己的博客进行管理;超级管理员还可以对于博客系统后台进行管理,Javascript乱弹设计模式系列(2) - 抽象工厂以及工厂方法模式(Factory)(2),在开始介绍之前,先贴出前两篇介绍的一些接口和类继承的JS文件Int

游客只能进行简单的查看博客的文章,个人资料等等;

博客会员还可以对自己的博客进行管理;

超级管理员还可以对于博客系统后台进行管理。

在开始介绍之前,先贴出前两篇介绍的一些接口和类继承的JS文件InterfaceAndClass.js,这里主要要说的是类继承的写法:

functioninheritClass(subClass,superClass)
{  
  varFunc=function(){};
  for(pinsuperClass.prototype)
  {
    Func.prototype[p]=superClass.prototype[p];
  }
  subClass.prototype=newFunc();
  subClass.prototype.constructor=subClass;
}

这里将父类superClass原型的所有方法赋值给新创建的函数类,之后把函数类的原型赋值于子类subClass原型中。

一、现在先对Javascript简单工厂进行介绍:

1. 添加用户类型接口IMember.js:

varIMember=newInterface("IMember",[["getMemberInfo"]]);

getMemberInfo做为IMember接口的接口方法。

2. 添加三个具体用户类型的类Guest.js,BlogMember.js,SuperAdmin.js,继承IMember接口:

//游客类
functionGuest(){
  Interface.registerImplements(this,IMember);//继承IMember接口
}
Guest.prototype={
  getMemberInfo:function(){
    return"游客";
  },
  getData:function(){
    return"";
  }
}
//博客会员类
functionBlogMember(){
  Interface.registerImplements(this,IMember);
}
BlogMember.prototype={
  getMemberInfo:function(){
    return"博客会员";
  },
  getData:function(){
    return"";
  }
}
//超级管理员类
functionSuperAdmin(){
  Interface.registerImplements(this,IMember);
}
SuperAdmin.prototype={
  getMemberInfo:function(){
    return"超级管理员";
  },
  getData:function(){
    return"";
  }
}

上一页  1 2 3 4 5 6 7  下一页

Tags:

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接