Java设计模式-创建型模式(更新完成)

具体请 前往 码读空间-面试应用题库 微信小程序阅读

一、模式介绍

创建型模式是 GOF 经典五大对象创建方案,核心目标分离对象创建与业务使用,屏蔽 new 直接实例化的硬编码耦合,灵活管控实例生成逻辑,适配单实例、多品类、复杂组装、克隆复用、系列产品等各类开发场景,是后端、前端、客户端工程化开发的基础编码规范。包含 5 大核心模式:单例、工厂方法、抽象工厂、建造者、原型。

二、模式组成(通用角色框架)

抽象顶层

:定义创建 / 构建统一接口,规范标准行为

具体实现

:落地对象实例化、组装、克隆逻辑

产品实体

:最终产出的目标对象

指挥 / 调度者

(建造者 / 工厂特有):统筹创建流程,隔离客户端细节

客户端

:仅调用创建接口,不感知底层构造逻辑

三、落地用例

单例:全局配置、日志管理器、数据库连接池

工厂方法:支付渠道、消息推送、文件解析器

抽象工厂:跨端 UI 组件、多数据库驱动、全套业务模块

建造者:复杂订单、表单、电脑 / 汽车配置、报表模板

原型:高频复制对象(审批模板、弹窗配置、游戏角色)

四、模式扩展与联动

扩展原则:遵循开闭原则,新增产品仅新增实现类,不修改原有创建逻辑

组合用法:抽象工厂内嵌建造者生成复杂产品;工厂搭配单例控制工厂全局唯一;原型结合缓存减少重复实例开销;多工厂分层拆分业务品类,降低类膨胀问题

退化场景:产品单一,抽象工厂可简化为工厂方法;属性简单的对象,建造者可替换为普通构造器

五、模式实现要点

单例:私有化构造,静态全局访问点,区分饿汉 / 懒汉 / 双重锁实现,规避多线程并发问题

工厂系列:抽离产品接口,工厂类独立负责实例生成,客户端依赖抽象而非具体类

建造者:分步构建组件,指挥者统一组装,支持同流程生成不同成品

原型:实现克隆接口,浅拷贝 / 深拷贝按需区分,优化大量对象创建性能

统一优势:降低代码耦合、便于单元测试、统一管控对象生命周期,大幅提升项目可维护性

相关推荐
高晶13 小时前
SPMI 控制器 RTL 设计与验证新手入门
设计模式·程序员·架构
geovindu1 天前
rust:N-Barrier Pattern
开发语言·后端·设计模式·rust·屏障模式·并发型模式
顧棟1 天前
OpenAPI 网关:鉴权 + 流量治理 一体化设计方案与实现
java·spring boot·设计模式
拆房老料1 天前
【第四部分:Agentic 智能体设计模式】17. Agent 路由模式详解:从意图识别到动态模型选择
java·设计模式·ai编程·策略模式
是2的10次方啊1 天前
设计模式与生活⑩:地铁没变,你换了个状态
设计模式
步行cgn2 天前
适配器设计模式:一个“翻译官”的故事
设计模式
扶尔魔ocy2 天前
【QT C++】常用设计模式
c++·设计模式
她说..2 天前
常见设计模式-观察者模式
java·spring boot·spring·观察者模式·设计模式
是2的10次方啊2 天前
设计模式与生活⑨:一碗胡辣汤,用不着认识十几种香料
设计模式
geovindu3 天前
rust: Semaphore Pattern
开发语言·后端·设计模式·rust·代理模式·企业级信号量模式·同步型模式