我正在开发一个现有项目。为了添加一些功能,我必须在一个接口中添加一个方法,现在因为在接口中添加了方法,所以必须由实现它的所有类来实现。我在一个模块中搜索并找到了10个实现此接口的类。但现在我将在其他模块和整个项目中搜索相同的内容。所以这有两个问题:
搜索实现该特定接口的类。
Class A implements ChangedInterface
和Class A implements B, ChangedInterface
,因此即使使用grep进行搜索也很困难。我想得到你的建议。
编辑:我无法避免在该界面中添加方法。 代码库是20 GB,在eclipse中导入对我来说很难。
答案 0 :(得分:1)
你为什么要搜索?只需编译并查看错误。如果您还没有自动化您的构建过程,请修复它!此外,如果不是所有类都需要实现此方法,请尝试扩展接口而不是添加方法。
答案 1 :(得分:-1)
public interface InterfaceA {
...
...
public void newMethod();
}
public abstract class AbstractClassA implements InterfaceA {
public void newMethod() {
//do Stuff
}
}
然后将所有implements IntefaceA
更改为extends AbstractClassA
,这样所有继承类都将具有newMethod的默认实现。
如果方法没有差异,您将避免重复的代码。