摘要:
“把模式装进你的脑子里面,然后在你的设计和已有的应用中,寻找何处可以使用它们。” a.策略模式: 假设有个Duck类,类中需要fly和quack接口,一个表示鸭子会飞,一个表示鸭子的叫声。如果需要产生一个橡皮鸭子,就需要从鸭子类继承产生,但是fly也会被继承下来。实际上橡皮鸭子被限制为不会飞(当然,也可以在橡皮鸭中,将fly接口重新实现。但是,实例仍然调用的是叫fly的接口,却使得橡皮鸭不能飞。有点矛盾!)。而且,当需要产生很多不同种的鸭子类型的时候,可能重新构造fly接口的工作很多,这导致了不必要的重复。 这样就导致了策略模式的产生: 定义: 策略模式作为一种软... 阅读全文