为什么只在一个类中使用Java接口?

时间:2014-04-19 21:05:03

标签: java interface software-design

我最近在阅读某人的代码,并且他们创建了一个仅由一个类实现的界面。在我看来,接口是不必要的。创建仅由一个类实现的接口有哪些设计原因?

3 个答案:

答案 0 :(得分:6)

有两个原因:

  1. 测试。在自动化测试期间,实现接口的类可以很容易地被存根,模拟,包装等替换。
  2. 未来的扩张。仅仅因为现在只有一个实施并不意味着没有更多的计划或想象。

答案 1 :(得分:1)

他/她可能只是试图定义其他类可以扮演的角色,特别是如果稍后添加更多类。假设你有一个Pet界面。您可能有一个Dog和RoboDog类,它们后来都实现了该接口,即使它们可能来自不同的继承树。

答案 2 :(得分:0)

我同意,现在您不需要它,但将来如果您需要更改实施或想要添加新行为,则无法管理更改。

  

变化是IT行业的最大因素。开发人员将更多时间花在维护而不是开发上。

您不想更改现有课程的实施,因为它已经过多年的测试。如果你改变它,那么它也会对相关的类产生巨大的影响,你必须从头开始测试你的完整应用程序。它增加了回归问题。