当前位置: 首页 > wzjs >正文

免费搭建贴吧系统网站seo智能优化系统

免费搭建贴吧系统网站,seo智能优化系统,网站的收藏本站怎么做,wordpress搬家修改域名简单工厂模式 设计模式:准确来说它是一种规范,它是我们约定好的一种解决问题的方案模版,不是什么的具体类和方法 先举个例子 P:生产者(接口) S:工厂 P的实现类:ABCDEFG P&…

简单工厂模式

设计模式:准确来说它是一种规范,它是我们约定好的一种解决问题的方案模版,不是什么的具体类和方法

先举个例子

P:生产者(接口)  S:工厂     P的实现类:ABCDEFG

P:母亲       S:学校       P的孩子:ABCDEFG

对一个接口P(母亲),一开始就两个实现类(孩子)A、B,然后用工场(学校)S来管理A、B

然后呢?S管理十分有好处了(方便管理),比如P多生了几个孩子D、E、F,P(母亲)然后用工厂(学校)S统一管理

哈哈哈、博主想的这个例子太好了

然后接口P说:我生了ABCDEF,我要用场子S里的东西,比如孩子D,我就叫场子S(学校)把D给我,P说:我的孩子我要用,它就实例化了一个对象productD,客户端开始使用

Product productD = SimpleFactory.createProduct("D");
productD.use();  // 输出:使用产品D

简单工厂模式

简单工厂模式是一种创建型设计模式,它提供了一种创建对象的最佳方式,而无需向客户端暴露创建逻辑。

孩子怎么发展,客户端不清楚,客户端直接叫母亲P来创建

基本概念

简单工厂模式通过一个工厂类,根据传入的参数不同,返回不同类的实例。这些被创建的类通常具有共同的父类或接口。

母亲P叫哪个孩子,哪个孩子从工厂S创建

代码演示

// 1. 抽象产品
interface Product {void use();
}// 2. 具体产品
class ConcreteProductA implements Product {@Overridepublic void use() {System.out.println("使用产品A");}
}class ConcreteProductB implements Product {@Overridepublic void use() {System.out.println("使用产品B");}
}// 3. 抽象工厂
interface Factory {Product createProduct();
}// 4. 具体工厂
class ConcreteFactoryA implements Factory {@Overridepublic Product createProduct() {return new ConcreteProductA();}
}class ConcreteFactoryB implements Factory {@Overridepublic Product createProduct() {return new ConcreteProductB();}
}// 5. 客户端使用
public class Client {public static void main(String[] args) {Factory factoryA = new ConcreteFactoryA();Product productA = factoryA.createProduct();productA.use();  // 输出:使用产品AFactory factoryB = new ConcreteFactoryB();Product productB = factoryB.createProduct();productB.use();  // 输出:使用产品B}
}

优点

  1. 将对象的创建与使用分离,降低耦合度
  2. 客户端无需知道具体产品的类名,只需要知道参数 ABCDEF

缺点

  1. 工厂类集中了所有产品的创建逻辑,职责过重,工厂管的太多太多

  2. 添加新产品需要修改工厂类,违反开闭原则

    放封闭原则的核心思想:对扩展开放,对修改封闭.

    • 对扩展开放:意味着有新的需求或变化时,可以对现有代码进行扩展,以适应新的情况。

    • 对修改封闭:意味着类一旦设计完成,就可以独立完成其工作,而不要对已有代码进行任何修改
      参考文章:设计模式六大原则(六)----开闭原则

和工厂模式的区别

  • 简单工厂模式是工厂方法模式的特例,是特例、特例、特例
  • 简单工厂模式只有一个工厂类(学校)
  • 而工厂方法模式为每个产品提供一个工厂类,更加符合开闭原则

最终总结(重要)

统一的接口,不同的实现类,客户端根据不同的状态标记(比如ABC),创建不同的对象,进行使用

可以根据最终总结建立记忆锚点,自我进行知识输出

工厂模式

之后补充

http://www.dtcms.com/wzjs/448244.html

相关文章:

  • 叫别人做网站需要注意什么问题百度网址大全首页
  • 专业建设网站制作做网络推广好吗
  • 增城新塘镇 企业网站建设江西seo推广
  • 自己做的网站如何百度能搜索百度指数疫情
  • 辽宁城乡建设集团成立网站专业的网络推广
  • 做plc课程设计的网站小吃培训2000元学6项
  • 企业网站建设的特点公司推广网站
  • 电子工程网站有哪些简单的网页设计源代码
  • H5网站开发工程师百度我的订单
  • 深圳哪里有做网站推广的适合小学生摘抄的新闻2022年
  • 网站建设网站软件有哪些软文经典案例
  • lnmp wordpress网站游戏推广员拉人犯法吗
  • 大连在哪个省份哪个市seo关键词怎么选择
  • iis为网站子目录绑定二级域名百度排名软件
  • 如果网站没有做icp备案吗如何做好一个品牌推广
  • 做国外wordpress赚钱重庆seo务
  • 在百度里面做个网站怎么做的aso苹果关键词优化
  • 建行信用卡网站百度第三季度财报2022
  • 网站建设微信托管世界足球排名最新
  • 怎么做纪念网站网页设计与制作案例教程
  • icp备案是网站上线前太原seo关键词优化
  • 做影视网站难吗网络营销推广方式
  • 同城信息商家的网站开发网络优化seo薪酬
  • 关键词做网站标题是什么意思百度推广一个关键词多少钱
  • 烟台开发区网站建设网站服务器ip地址查询
  • 福州 哈尔滨网站建设 网络服务网站推广是干嘛的
  • 哪些做任务可以赚钱的网站百度最怕哪个投诉电话
  • 高端网站建设公司好不好谷歌seo网站推广怎么做优化
  • dz网站建设器做灰色词seo靠谱
  • 网站建设中网站需求分析和报告工能论文福州百度代理