出自大话设计模式:
商场进行收费,有正常收费,打折,满减的活动。针对设计
1、首先通过简单工厂的方式实现
1-1、抽象超类,默认有未实现方法,收取现金

1-2、
分别有对应的正常收费,打折,满减的3个实现



1-3、创建简单工厂,用于生成cashsuper超类

1-4、main方法模拟成客户端:

简单工厂方法: 客户端需要知道CashSuper和CashFactory2个类,才能够实现功能
2、通过策略模式完成:
2-1、客户端只需要传入对应的策略方案,然后通过策略模式的上下文生成对应的策略实体,调用对应的计算,即可计算。这样客户端只需要知道CashContext即可。对策略进行封装。


截图转自:大话设计模式
