标题(任选)
设计模式 02|工厂方法模式 通俗讲解 + 实战代码💻 23 种设计模式连载② 工厂方法模式,解耦神器 拆解工厂方法模式!原理 + 案例 + 代码一站式学习
🔍 什么是工厂方法模式?
通俗讲:专门用 “工厂类” 来创建对象,调用方不用关心对象怎么 new、怎么构造,只需要告诉工厂想要什么产品就行。
核心目的:把对象创建和业务逻辑分开,方便扩展、降低耦合。
🎬 生活 / 实际场景
奶茶店:店员(工厂)根据顾客需求,制作不同口味奶茶(产品),顾客不用管制作流程 软件场景:APP 推送功能,根据设备类型生成安卓 / 苹果推送消息 文具工厂:按需生产钢笔、铅笔等不同文具
💻 Java 代码实现
1. 抽象产品(统一产品规范)
java
运行
// 抽象产品:饮料public interface Drink { void showName();}2. 具体产品
java
运行
// 产品1:可乐public class Coke implements Drink { @Override public void showName() { System.out.println("产出:可乐"); }}// 产品2:果汁public class Juice implements Drink { @Override public void showName() { System.out.println("产出:果汁"); }}3. 抽象工厂(统一工厂规范)
java
运行
// 抽象工厂public interface DrinkFactory { Drink createDrink();}4. 具体工厂
java
运行
// 可乐工厂public class CokeFactory implements DrinkFactory { @Override public Drink createDrink() { return new Coke(); }}// 果汁工厂public class JuiceFactory implements DrinkFactory { @Override public Drink createDrink() { return new Juice(); }}5. 测试调用
java
运行
public class Test { public static void main(String[] args) { DrinkFactory factory1 = new CokeFactory(); Drink drink1 = factory1.createDrink(); drink1.showName(); DrinkFactory factory2 = new JuiceFactory(); Drink drink2 = factory2.createDrink(); drink2.showName(); }}✅ 工厂方法模式 常用业务场景总结
对象创建逻辑复杂,多处重复 new 对象的场景 需要批量生成同类但不同品类的对象(如各类支付方式、消息推送) 产品体系会持续扩展,后续要新增产品无需改动原有代码 框架底层组件创建、第三方类实例化 多终端适配:不同系统 / 设备生成对应功能实例
结尾互动 + 预告
第二期工厂方法模式讲解完毕✨
下期更新抽象工厂模式,记得持续关注哦~
#设计模式 #Java #程序员 #编程入门 #代码实战 #软件开发
🖼️ 配图文案参考(16:9 封面 / 内页文字)
封面大字:设计模式 02・工厂方法模式
小字:原理 | 代码 | 实战场景
内页分区图文字:
核心定义:工厂负责创建对象,解耦代码 四层结构:抽象产品 + 具体产品 + 抽象工厂 + 具体工厂 适用场景:多品类对象、功能持续扩展
夜雨聆风