关于简单工厂模式、工厂方法模式和抽象工厂模式的理解

一、简单工厂模式

没有抽象工厂,一个具体工厂。

一种抽象产品,多个具体产品。

通过调用具体工厂的方法(对具体工厂传入具体产品的String字符串参数)来生产具体产品

二、工厂方法模式(一个产品等级结构,多个产品族)一种产品被多个工厂加工,有多个牌子。

一个抽象工厂,多个具体工厂

一种抽象产品,这种抽象产品对应多个具体产品。

不需要对工厂传入String字符串参数,实例化工厂类直到具体工厂,调用具体产品对应的具体工厂生产对应产品。

三、抽象工厂模式(多个产品结构,多个产品族)多种产品被多个工厂加工

一个抽象工厂,多个具体工厂。

多种抽象产品,每种抽象产品对应多个具体产品。

多个抽象工厂要给出生产多个产品等级结构的抽象方法。

多个产品等级结构要给出所需要的多个产品族的抽象方法。

颜色抽象工厂对应的多个具体颜色抽象工厂(黄黑白),要分别给出生产不同产品等级(男和女)的方法。

性别产品等级(男和女),要给出多个具体颜色产品(黄黑白人种的男人和女人)的方法。

应用:哪一种产品等级,需要哪个颜色的产品,就调用哪个颜色工厂的具体的生产该产品等级的方法。

原文地址:https://www.cnblogs.com/rainbow-1/p/15328930.html