美文网首页PHP程序员
PHP工厂模式之静态工厂模式

PHP工厂模式之静态工厂模式

作者: php转go | 来源:发表于2020-08-20 11:03 被阅读0次

模式定义

与简单工厂类似,该模式用于创建一组相关或依赖的对象,不同之处在于静态工厂模式使用一个静态方法来创建所有类型的对象,该静态方法通常是 factory 或 build。

代码示例

创建静态工厂,以后调用都用到这个静态工厂

class StaticFactory
{
    public static function factory($type)
    {
        //通过传过来的类名,实现实例化
        $className = __NAMESPACE__ . '\\' . ucfirst($type);
        if (!class_exists($className)) {
            throw new \InvalidArgumentException('Missing format class.');
        }
        return new $className();
    }
}

创建格式化接口,所有产品都根据这里规则来实例

/**生产猫的接口
 * Interface FormatCatInterface
 * @package app\lib\StaticFactory
 */
interface FormatCatInterface
{
    /**生产手
     * @return mixed
     */
    public static function createHand();
}

具体产品

/**家猫 类
 * Class CatDomestic
 * @package app\lib\StaticFactory
 */
class CatDomestic implements FormatCatInterface
{

    public static function createHand()
    {
        return '生产家猫的手';
    }
}

/**波斯猫 类,可以生产他的手脚毛等...
 * Class CatPersian
 * @package app\lib\StaticFactory
 */
class CatPersian implements FormatCatInterface
{

    public static function createHand()
    {
        return '生产波斯猫的手';
    }
}

控制器调用

//生产家猫的手
 echo  StaticFactory::factory("CatDomestic")->createHand();

相关文章

  • PHP工厂模式之静态工厂模式

    模式定义 与简单工厂类似,该模式用于创建一组相关或依赖的对象,不同之处在于静态工厂模式使用一个静态方法来创建所有类...

  • 设计模式

    设计模式 工厂模式生成bean 工厂模式分为静态工厂和实例工厂 静态工厂: 实例工厂

  • 设计模式之工厂模式

    设计模式之工厂模式 1. 简单工厂模式 1.1 模式定义 简单工厂模式又称为静态工厂方法,它属于创建型模式。在简单...

  • 工厂模式

    工厂模式 工厂模式分为 简单(静态)工厂 工厂方法 抽象工厂 下面分别介绍这几总工厂模式 简单工厂 (静态工厂) ...

  • 2016.06笔记

    iOS设计模式之工厂模式(简单工厂,工厂方法,抽象工厂) 简单工厂:简单工厂模式的工厂类一般是使用静态方法,通过接...

  • 大话设计模式之_工厂模式

    大话设计模式之_工厂模式 工程方法(即简单工厂模式simpleFactory,或静态工厂方法 static fac...

  • 简单工厂模式

    Android进阶之设计模式 简单工厂模式 简单工厂模式(又叫作静态工厂方法模式), 其属于创建型设计模式,但并不...

  • 设计模式-之简单工厂模式(四)

    工厂模式的分类  工厂模式分为静态工厂模式、工厂方法模式、抽象工厂模式。 今天和大家分享的是简单工厂模式。 什么是...

  • Java设计模式——工厂模式

    工厂模式简单工厂模式工厂方法模式抽象工厂模式 1.简单工厂模式 1.基本介绍1)简单工厂模式也叫静态工厂模式,是属...

  • 设计模式-工厂方法模式

    1、工厂方法模式(Factory Method) 工厂方法模式分为三种: 普通工厂模式 多个工厂模式 静态工厂模式...

网友评论

    本文标题:PHP工厂模式之静态工厂模式

    本文链接:https://www.haomeiwen.com/subject/zjprjktx.html