你的位置:首页 > Java教程

[Java教程]6.2.1 工厂模式


  工厂模式是软件工程领域一种广为人知的设计模式,这种模式抽象了创建具体对象的过程。考虑到在ECMAScript中无法创建类,开发人员就发明了一种函数,用函数来封装以特定接口创建对象的细节,例如:

 function createPerson(name,age,job){  var o = new Object();  o.name = name;  o.age = age;  o.job = job;  o.sayName = function(){    alert(this.name);  }  return o;}var person1 = createPerson("Tom",29,"Software Engineer");var person2 = createPerson("Greg",27,"Doctor");

  函数createPerson()能够根据接受的参数来构建一个包含所有必要信息的Person()对象。可以无数次的调用这个函数,而每次它都会返回一个包含三个属性一个方法的对象。工厂模式虽然解决了创建多个相似对象的问题,但却没有解决对象识别的问题(即怎样知道一个对象的类型)。随着JavaScript的发展,又一个新模式出现了。