首页 > 代码库 > 策略模式理解

策略模式理解

从继承中实现方法的复用有一个问题:有的父类的方法代码你不想要,就需要自己把所有不想要的方法都重写或者改写,然后保留自己想要的方法,这样有可能为了一个想要的方法,要重写好多其他方法。而且不能在父类里面改,因为这个子类不想要的方法,有可能是其他子类想要的呢?

解决的办法是把这些有的子类适用有的子类不适用的方法,不要放在父类里面,而是提取出来做成不同的方法类,然后实现不同的方法接口,再在父类中定义针对这些接口的引用,然后将这些接口指向不同的方法类,再在自己的方法中调用这些方法类中的方法,这样就可以达到灵活调用方法的目的了

 

这样的话,只从父类继承指向方法类接口的引用,而不是继承具体的不能普遍适用的方法。

策略模式理解