Java设计模式-创建型设计模式

创建型设计模式(5种,核心:管控对象创建,隔离new细节)

目的:把对象实例化逻辑和业务使用代码分离,降低耦合、灵活控制对象创建。

  1. 单例 Singleton

保证一个类全局只有一个实例,提供全局访问点。

适用:配置管理器、线程池、日志工具。

两种:饿汉(类加载初始化)、懒汉(用时创建)。

  1. 工厂方法 Factory Method

一个产品对应一个工厂,父类定义创建接口,子类实现实例化。

适用:产品种类会持续扩展,新增产品只加工厂类,不改原有代码。

  1. 抽象工厂 Abstract Factory

一个工厂生产一族相关产品(多系列配套对象)。

例:安卓/ios两套UI控件(按钮+弹窗),一个工厂产出整套控件。

  1. 建造者 Builder

分步构造复杂对象,拆分:建造者+指挥者+产品。

适用:对象属性多、构造步骤固定(如复杂报文、电脑组装)。

  1. 原型 Prototype

克隆已有对象创建新实例,不用new。

适用:创建对象成本高(大数据初始化、资源加载重),深浅拷贝是关键点。

速记区分

  • 单例:只能造一个

  • 工厂方法:一类产品一个厂

  • 抽象工厂:一套产品一个厂

  • 建造者:分步拼复杂对象

  • 原型:复制老对象出新对象

更多分析请转至 码读空间-面试应用题库 小程序

相关推荐
小羊没烦恼!1 天前
微服务化的基石——持续集成
java·大数据·word·powerpoint·.net
俊昭喜喜里1 天前
java中的继承和多态的区别
java
小羊没烦恼!1 天前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
譕痕1 天前
JSONObject与JSONArray封装数据格式区别
java·json
胡写代码1 天前
别再前后端各写一套表单校验了
java·后端
小鱼能吃糖1 天前
缺陷修复总览 · mall电商项目:5类缺陷,1个病根,4个业务域
java·电商
此时不提桶,更待何时1 天前
01-06-A-JVM排查实战详解
java·jvm
vipxieliang1 天前
ValidX 在 DDD 领域驱动设计中的实践
java·spring boot
ba_pi1 天前
mysql 查询所有表名并授权
java
ProcessOn官方账号1 天前
java函数式编程--入门基础
java·编程·函数式编程