我会更改在接口中声明的返回类型,这在其他10个类方法中实现。 我使用eclipse作为IDE, 当前方法的签名是:
public List<T> findById(int id);
以及我需要的东西
public T findById(int id);
问候,圣地亚哥
答案 0 :(得分:0)
由于注释中的@ Andy Turner状态,您无法自动重构返回列表以返回其中一个列表元素。但是,有一些步骤可以安全地进行界面重构。
重命名界面中的列表返回方法。
对于最常见的解决方案,例如,返回第一个元素,使用TDD在您的一个实现中编写新的对象返回方法。新方法应调用旧方法,并返回新的返回类型。不要使用下面的示例,它显然是不安全的,并且会在某个时刻导致堆栈转储。
@Override
public T findById(int id){
List<T> res = findById(id);
return res.get(1);
}
更新界面以包含新方法签名。
对于已使用相同解决方案的每个类,请复制并粘贴步骤2中编写的新方法。
对于任何其他所需的实现,请重复步骤2和4.
如果方法是基类的抽象方法,则步骤2中的初始方法将写在基类上。