工厂模式

简单工厂模式

介绍

简单工厂模式又叫静态工厂模式,主要是把类同的方法通过共同性进行封装,通过隐藏对象的创建细节,让客户端只需调用一个统一的接口或方法即可创建对象,而无需了解对象的具体创建逻辑,从而简化了对象的创建过程。

  • 简单来讲就是把创建对象的过程封装起来,通过传参等形式拿到实例的结果。

  • 其缺点就是每次新增新的逻辑时就要修改封装方法,所以这个模式只能用于对象数量较少或者对象逻辑不复杂时使用。

下面就是一个简单工厂模式的应用场景了。

示例

  • 比如一个常用的多支付平台需求,根据用户选择的不同支付类型,调用不同的支付方法。
// 简单工厂
class PaymentFactory {
  static createPayment(type) {
    switch (type) {
      case "alipay":
        return new Alipay();
      case "wechatpay":
        return new WechatPay();
      default:
        throw new Error("Invalid payment type");
    }
  }
}

// 支付宝支付类
class Alipay {
  pay(amount) {
    console.log(`支付宝支付 ${amount}`);
  }
}

// 微信支付类
class WechatPay {
  pay(amount) {
    console.log(`微信支付 ${amount}`);
  }
}

// 使用简单工厂创建支付
const alipay = PaymentFactory.createPayment("alipay");
alipay.pay(100); // 支付宝支付 100 元
上次更新 2026/6/23 11:49:15
评论
  • 按正序
  • 按倒序
  • 按热度
Powered by Waline v2.15.8