目的
减少工厂方法情况下过多的工厂类, 将相关的类的创建使用同一个工厂方法
例子代码
最近有个考了 200 多分的同学冒充了清华的录取通知书, 家里杀鸡宰牛之后发现是假的, 听说其父亲被气得进了医院, 血压都比自己二个的分数高...
家长也真是可以的, 平时孩子学习成啥样心里都不清楚还是说我们这位大哥伪造成绩单什么的已经是惯犯啦, 常年营造了自己的学霸人设
听说这位同学的录取通知书是在某宝上买的, 并且现在还能搜到相关的商家, 不过福报厂知道这个事情之后立马就规范整顿了起来, 色情出事整顿色情, 造假出事整顿造假, 平时啥都不知道的样子~
抽象工厂模式
先定义一个 Offer:
先定义一个 Paper:
定义一个印章:
定义一个工厂类:
使用:
使用:
假的 offer: 家里蹲大学假的纸:绿色萝卜印章: 高度院校印章
课后作业
1. 思考开闭原则在抽象工厂模式下的使用, 如果添加了一套不同的offer是否需要'修改代码', 如果要是增加墨水产品, 是否需要修改代码
2. 看着类图仔细思考一下抽象工厂模式的缺点
微信: