千家信息网

设计模式之工厂模式-抽象工厂模式

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,设计模式之工厂模式-抽象工厂模式抽象工厂模式:定义了一个接口用于创建相关或有依赖关系的对象簇,而无需明确指定具体类。我们来看看使用抽象工厂模式来实现的披萨项目。来源:凯哥Java(kaigejava)
千家信息网最后更新 2026年10月31日设计模式之工厂模式-抽象工厂模式


设计模式之工厂模式-抽象工厂模式

抽象工厂模式:

定义了一个接口用于创建相关或有依赖关系的对象簇,而无需明确指定具体类。

我们来看看使用抽象工厂模式来实现的披萨项目。

来源:凯哥Java(kaigejava)

先来看看项目结构:

说明:

1:工厂接口

2:两个实现类

3:订单对象

4:测试类。

看看具体代码:

IFactoryInterface:

BeiJinFatory:

FactoryOrderPizza

测试类:


三种工厂模式:

1:把对象的实例化放在简单的类里面,那么这种就是简单工厂模式(也叫静态工厂模式)

2:如果我们把对象实例化代码进行抽象,抽象成创建对象的方法跟具体的实例化(也就是其子类),这种就是工厂方法模式。工厂方法模式的意义:将对象的创建过程,由原来的在类里面创建延迟到子类里面来创建对象了。

依赖抽象原则:

1:变量不要持有具体类的引用。

理解:A a = new A();这种方式就是变量a持有A对象的具体引用。在工厂模式中,我们可以这么做:A a = SF("A");或者是 A a = create("A");或者是A a = new Factory(new CreateA());

2:不要让类继承自具体类,要继承自抽象接口或者抽象类。

我们需要知道,如果类A继承具体的类B。这样的强依赖关系不便于扩展。而我们使用接口或者抽象类的话,就很方便扩展了。

3:不要覆盖基类中已经实现的方法

我们在设计基类的时候,已经实现的方法原则上是所有继承此基类的子类公用的(通用的)方法。子类中无需进行覆盖即可使用的。如我们披萨案例中的披萨烘培、切割以及打包方法。

说明:

通过本篇加前两篇文章,我们已经把工厂模式讲解完成了。但是,说实话,凯哥自己都感觉讲的不是很明白。所以,在下一篇文章中,凯哥将对三种模式做对比,然后进行总结。希望可以通过下一篇文章能把工厂模式讲解明白。

代码已经上传git上面了。

联系凯哥--》凯哥Java(kaigejava)

或凯哥个人博客:www.kaigejava.com 个人博客上面可以私聊凯哥哦!




模式 工厂 对象 方法 接口 代码 子类 实例 就是 篇文章 披萨 设计 个人 博客 原则 变量 项目 测试 设计模式 说实话 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 广州淘业互联网络科技 互联网核心科技是什么 互联网品科技 互联网科技战争 网络科技有限互联网 互联网科技公司发展 互联网金融科技委员会 居家互联网科技有限公司 深圳卡尔迅互联网科技有限公司怎么样 阿里巴巴算科技企业还是互联网 互联网为啥属于高科技 厦门比较好的科技互联网公司 世界互联网科技公司市值排名 互联网媒体平台算高科技产业 本届互联网博览会上的黑科技 高科技互联网发展前景如何 华中科技大学互联网的牛人 互联网时代的科技公司 风投北京互联网科技 九思连强互联网电子科技有限公司 互联网科技有限公司 科技平台互联网 互联网 的科技创新 万易互联网科技有限公司 卓越科技(互联网 ) 融贸通互联网科技 互联网科技大赛获奖感言 滨湖区互联网智能科技产品有哪些 山东星卡互联网科技有限公司官网 科技互联网行业投资研究
0