0

为什么策略模式使用了implements而不是extends?因为我会假设 StrategyA is-aStrategyBase,这会导致我扩展基本策略而不是将其作为接口实现。

那么,将策略模式与“扩展”一起应用会不会是错误的?如果我在界面上使用它有什么好处?

4

2 回答 2

2

如果您没有公共代码可以放入您的策略基类型中,那么使用抽象类而不是接口将一无所获,除了将此类 API 的客户端限制为使用他们可能想要的专用策略类一个类实现多个接口。

于 2012-10-23T09:08:16.030 回答
1

根据我的信息:使用extends,您将无法扩展任何其他类。如果方法不需要定义,为什么不使用interface

于 2012-10-23T09:03:44.537 回答