设计模式学习-工厂模式

工厂模式

定义:定义了一个创建对象的接口,但由子类决定要实例化的类是哪一个。工厂方法让类把实例化推迟到了子类。

说明:

  • 所有的工厂模式都是用来封装对象的创建。工厂模式通过让子来决定应该创建的对象是什么,以达到将对象创建的过程封装的目的。
  • 编写创建者时,不需要知道实际创建的产品是哪一个,选择了使用哪个子类,而是由子类去实例化。

个人总结

  • 其实可以简单这样理解:工厂的核心就是创建对象的一个方法。
  • 通过工厂返回的对象,调用对象的方法。
  • 在工厂子类中去创建实例对象,即在子类中写义务逻辑
  • 考虑到多态,将产品写成抽象方法,让子类去实现他,工厂创建的也是具体的子类。
  • 对主函数而言,不需要指定实例化创建的产品是谁,而是通过调用工厂的创建子类方法。
    这里写图片描述

其他总结

优点
  • 一个调用者想创建一个对象,只要知道其名称就可以了。
  • 扩展性高,如果想增加一个产品,只要扩展一个工厂类就可以。
  • 屏蔽产品的具体实现,调用者只关心产品的接口。
缺点
  • 每次增加一个产品时,都需要增加一个具体类和对象实现工厂,使得系统中类的个数成倍增加,在一定程度上增加了系统的复杂度,同时
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值