php 工厂模式

php 工厂模式一、 什么是工厂模式工厂类调用自身静态方法来生产对象实例工厂类:负责生成其他对象的类或方法途径:调用自身静态方法结果:一个实例对象工厂模式有一个关键的构造,根据一般原则命名为Fac

大家好,又见面了,我是你们的朋友全栈君。

一、 什么是工厂模式

  工厂类调用自身静态方法来生产对象实例

  工厂类:负责生成其他对象的类或方法

  途径:调用自身静态方法

  结果:一个实例对象

  工厂模式有一个关键的构造,根据一般原则命名为Factory的静态方法,然而这只是一种原则,虽然工厂方法可以任意命名这个静态还可以接受任意数据的参数,必须返回一个对象。

 

二、 为什么需要工厂模式

  1. 工厂模式可以将对象的生产从直接new 一个对象,改成通过调用一个工厂方法生产。这样的封装,代码若需修改new的对象时,不需修改多处new语句,只需更改生产对象方法。
  2. 若所需实例化的对象可选择来自不同的类,可省略if-else多层判断,给工厂方法传入对应的参数,利用多态性,实例化对应的类。

    优点:增加代码的可拓展性,减少业务的耦合性,减少代码量

 

三、 代码实现

  1. 工厂类通过不同的参数 返回对应的业务处理类:
    <span role="heading" aria-level="2">php 工厂模式

     

     

  2. 工程业务接口类 统一定义业务接口:
    <span role="heading" aria-level="2">php 工厂模式

     

  3. 工厂调用类 继承工厂类 接收类型参数 实例化对应工厂对象 执行业务方法:
    <span role="heading" aria-level="2">php 工厂模式

     

  4. 具体业务处理类 实现接口方法:
    <span role="heading" aria-level="2">php 工厂模式

     

     

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/155069.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 如何直接运行jar包_怎么运行jar文件

    如何直接运行jar包_怎么运行jar文件怎么后台运行jar包1.后台运行jar包[root@slaver5testshanghai]#nohupjava-jarplaningprojectweb-2020120813.jar&nohup:不挂断地运行命令,输出都将附加到当前目录的nohup.out文件中。如果当前目录的nohup.out文件不可写,输出重定向到$HOME/nohup.out文件中&:后台运行查看nohup.out[root@slaver5testshanghai]#cat

    2022年9月29日
    0
  • wsl2 ubuntu 20.04_卸载wsl ubuntu

    wsl2 ubuntu 20.04_卸载wsl ubuntu最近Ubuntu22.04正式发布了,我使用的Ubuntu还是WSL2中的20.04版本,故前来升级。不过坑确实比想象中的多,遂来尝试总结一下,希望能帮助到有需要的同学。不过其实最后,大家会发现,改国内源一把梭,啥问题都解决了::>_………

    2022年10月8日
    1
  • java一维数组、二维数组初始化

    java一维数组、二维数组初始化版权声明:本文为博主原创文章,遵循CC4.0BY-SA版权协议,转载请附上原文出处链接和本声明。…

    2022年5月26日
    32
  • phpstorm xdebug不成功_vscode配置php开发环境

    phpstorm xdebug不成功_vscode配置php开发环境phpstorm —— Xdebug 的配置和使用

    2022年4月20日
    152
  • idea激活码mac【在线破解激活】「建议收藏」

    idea激活码mac【在线破解激活】,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月17日
    60
  • JVM内存结构和Java内存模型别再傻傻分不清了

    JVM内存结构和Java内存模型别再傻傻分不清了JVM内存结构和Java内存模型都是面试的热点问题,名字看感觉都差不多,网上有些博客也都把这两个概念混着用,实际上他们之间差别还是挺大的。通俗点说,JVM内存结构是与JVM的内部存储结构相关,而Java内存模型是与多线程编程相关,本文针对这两个总是被混用的概念展开讲解。文章目录JVM内存结构JVM构成JVM内存结构程序计数器虚拟机栈本地方法栈堆方法区GC垃圾回收机制1.垃圾判别方法引用计数算法可达性分析算法2.垃圾回收算法标记清除法标记整理法复制算法3.分代垃圾回收机制4.垃圾回收器5.四种引

    2022年4月28日
    42

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号