简单工厂模式,工厂方法模式和抽象工厂模式的区别
来源:互联网 发布:koala mac 如何下载 编辑:程序博客网 时间:2024/05/21 11:45
工厂方法模式:
一个抽象产品类,可以派生出多个具体产品类。
一个抽象工厂类,可以派生出多个具体工厂类。
每个具体工厂类只能创建一个具体产品类的实例。
抽象工厂模式:
多个抽象产品类,每个抽象产品类可以派生出多个具体产品类。
一个抽象工厂类,可以派生出多个具体工厂类。
每个具体工厂类可以创建多个具体产品类的实例。
区别:
工厂方法模式只有一个抽象产品类,而抽象工厂模式有多个。
工厂方法模式的具体工厂类只能创建一个具体产品类的实例,而抽象工厂模式可以创建多个。
(工厂模式有简单工厂模式,工厂方法模式和抽象工厂模式几种形态。)
一开始只在后花园中种蔬菜类的时候可以用简单工厂模式,由工厂负责生成具体的蔬菜类,
但是如果后花园要引进水果类的时候简单模式就行不通了,因此需要使用工厂方法模式,将产品类族分开。
但是如果后花园的规模继续扩大到地域范围的分割时,比如说一个在北京,一个在上海的时候,工厂方法模式就不够了,因为对两个后花园来说,每个后花园的植物是要被种在一起的,并且两个后花园用工厂方法模式是无法体现其区别的。
我个人认为抽象工厂和工厂方法的最大区别应该是抽象工厂提取了各个工厂方法的共性,并且能够确保工厂方法中产生的产品类能够在一起工作。
- 简单工厂、工厂方法模式和抽象工厂模式区别?
- 【设计模式之四:工厂模式对比】简单工厂、工厂方法和抽象工厂的区别
- 简单工厂模式,工厂方法模式,抽象工厂模式区别
- 简单工厂模式,工厂方法模式和抽象工厂模式的区别
- 简单工厂模式、工厂方法模式和抽象工厂模式的区别
- 简单工厂模式,工厂方法模式和抽象工厂模式的区别
- 简单工厂模式、工厂方法模式和抽象工厂模式的区别
- 简单工厂模式、工厂方法模式和抽象工厂模式
- 简单工厂模式、工厂方法模式和抽象工厂模式
- 简单工厂模式,工厂方法模式和抽象工厂模式
- 抽象工厂模式、简单工厂模式、工厂模式的区别
- 简单工厂模式、工厂模式、抽象工厂模式的区别
- java设计模式-创建模式之 简单工厂,工厂方法和抽象工厂的区别总结
- 【设计模式】简单工厂模式、工厂方法模式和抽象工厂模式区别与联系
- 抽象工厂模式和工厂方法模式的区别
- 工厂方法模式和抽象工厂模式的区别
- 工厂方法模式和抽象工厂模式的区别
- 简单工厂、工厂方法、抽象工厂模式
- hibernateTemplate实现分页
- 关于构造中new的异常捕获!
- ADROID 2.1 架构解析 4 静音与振动
- asp.net下的数据图
- GIF上画PNG
- 简单工厂模式,工厂方法模式和抽象工厂模式的区别
- 复制表结构
- 人员定位项目总结
- java中使用ibatis来调用存储过程(上)
- GridView中删除按钮的确认提示
- 我想想
- About Session
- java base64编码和解码
- QTP论坛帖总结