工厂模式概述
1.模式定义及核心思想 工厂模式(Factory Pattern) 是一种创建型设计模式,它提供了一种创建对象的最佳方式。在工厂模式中,创建对象时不会对客户端暴露创建逻辑,而是通过一个共同的接口来指向新创建的对象。
核心思想:把对象的创建和使用分离,不让使用者直接 new 对象,统一交给「工厂」来生产,降低耦合、方便维护。 工厂模式分三种:简单工厂、工厂方法、抽象工厂,层层递进
简单工厂
核心:
一个工厂类,包含一个方法,根据参数决定创建哪个产品。(工厂模式内部创建一个父类的子类,返回的则是父类的接口,这种行为,其实就是多态。)
角色:
- 抽象的产品 : 统一产品接口(如Device 电子设备)
- 具体的产品 : 手机、电脑
- 工厂类 : 统一生产方法
工厂方法模式(标准工厂模式)
核心:
一个产品对应一个工厂,定义抽象工厂接口,每个具体工厂只生产对应产品。 角色
- 抽象产品
- 具体产品
- 抽象工厂:定义生产接口
- 具体工厂:每个工厂只造一种产品 核心规则 一个工厂只负责生产一个产品
抽象工厂模式(超级工厂)
核心:
工厂生产一族产品,不止一个产品,而是「产品簇」。
举例:
• 小米工厂:造小米手机 + 小米电脑 • 华为工厂:造华为手机 + 华为电脑
适用场景:
有多个产品系列、产品分组、整套配套产品时使用