为什么父类和子类都实现相同的接口?
2022-09-01 07:31:14
我继承了一些遗留的Java(1.4)代码,这个设计决策经常出现。我不明白它是否有任何目的或理由。
public interface SoapFacade extends iConfigurable{ }
public class SoapFacadeBase implements SoapFacade{
...
}
public class SoapFacadeImpl extends SoapFacadeBase implements SoapFacade{
...
}
根据我对接口的理解(我的实验得到了加强),让父接口和子接口实现相同的接口是没有目的的。在此方案中,from 的所有内容都在 中实现,但 in 中的方法在 中实现。但是,这并不需要实现 。SoapFacade
SoapFacadeBase
iConfigurable
SoapFacadeImpl
SoapFacadeImpl
SoapFacade
关于接口,是否有一些我不知道的东西会给这种模式带来一些目的或好处?除了缺乏清晰度之外,是否存在潜在的成本来推动重构?还是应该简单地重构它以获得清晰度/简单性?