您的位置:首页 > 其它

抽象工厂模式

2017-01-06 23:08 253 查看
<?php
/**
* 工厂方法与抽象工厂的区别:
* 工厂方法: 抽象出一个共同的创建的行为, 但具体能创建出来什么东西,是由具体的工厂(子类或实现类)来实现的
* 抽象模式: 抽象出共同的创建行为,还有必须创建的对象, 所有的工厂(子类或实现类)都必须实现
*/

abstract class AbstractFactory
{
abstract public function createProduct1();
abstract public function createProduct2();
}

class FactoryA extends AbstractFactory
{
public function createProduct1()
{
return new ProductA1();
}

public function createProduct2()
{
return new ProductA2();
}
}

class FactoryB extends AbstractFactory
{
public function createProduct1()
{
return new ProductB1();
}

public function createProduct2()
{
return new ProductB2();
}
}

class ProductA1
{

}
class ProductA2
{

}

class ProductB1
{

}
class ProductB2
{

}


View Code
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: