将新方法添加到由许多类直接实现的接口

Vik*_*rsi 4 java interface

我对java接口有一个小问题

有没有办法在不修改实现它的类的情况下向java接口添加新方法.

条件是我不应该介绍新的界面

use*_*421 8

有没有办法在不修改实现它的类的情况下向java接口添加新方法.

没有.

条件是我不应该介绍新的界面

如果条件还包括不修改直接实现接口的许多类,则会给您一个不可能完成的任务.

这就是为什么接口通常伴随着抽象Adapter类的原因,这些抽象类以无操作方式实现所有方法.实现类然后扩展适配器而不是实现接口,因此如果需要添加接口,则只需要修改接口和适配器.

  • +1除了最后一段之外.我认为使用带有无操作实现的`Adapter`是一个非常糟糕的主意.界面是合同.实现它的方法而不实际执行它所签订的工作会破坏该合同. (2认同)