设计模式笔记2--工厂模式

简单工厂模式

image.png

实际上,简单工厂模式并不属于 工厂模式 而是一种代码规范?

image.png
image.png
image.png

没有使用简单工厂模式之前


image.png

使用简单工厂模式后:


image.png

缺点: 当加新的课程时,需要创建新的类,违背开闭原则

通过反射修改简单工厂模式:


image.png
image.png

这样,即便是新增加课程,也不需要在动工厂类,而只需要传入新增的类,这样在一定程度上满足了开闭原则

在JDK中使用简单工厂的类

image.png

工厂方法

image.png

核心:把创建的过程延迟到子类

image.png
image.png
image.png
image.png

抽象工厂方法

image.png
image.png
image.png
image.png
image.png
image.png

抽象工厂更适合创建一个产品族的 而工厂方法更适合于一个产品等级结构

image.png
image.png

抽象工厂拿到一个产品族,然后可以创建出该产品族的所有产品

你可能感兴趣的:(设计模式笔记2--工厂模式)