441
1、工厂方法或类生成对象,而不是在代码中直接new。
2、当对象对应的类名发生变化时,只需改变工厂类中的实例化方法。不需要外部改变所有的地方。
定义一个专门用来创建其他对象的类别。这样,当我们需要调用某一类时,我们就不需要使用new关键字实例化,而是通过我们的工厂类调用某种方法来获得类的实例。
实例
classFactory{ staticfunctioncreateDatabase(){ $db=newDatabase(); return$db; $db=Factory::createDatabase();