У меня есть метод ниже, в котором я использую эту строку ProcBOF.getInstance().find
для получения некоторых данных.
private static Map<Long, Long> getAll(Map<Long, Event> holder) throws FinderException {
Map<Long, Long> map = new HashMap<>();
if (holder.isEmpty()) {
return map;
}
Set<Long> items = holder.keySet();
long[] itemIds = Longs.toArray(items);
List<TeraBo> teraBos = TBOF.getInstance().findItemIdsIn(itemIds);
for (TeraBo tBo : teraBos) {
ProcessBo bo = ProcBOF.getInstance().find(tBo, holder.get(tBo.getItem().getId()).getDataId(), ReadSet.FULL, null);
bo.getVar();
map.put(tBo.getItem().getId(), bo.getVar());
}
return map;
}
Теперь я хочу смоделировать метод find
класса ProcBOF
, чтобы онможет вернуть некоторый фиктивный ProcessBo
объект, из которого мы можем вызвать getVar()
метод, но проблема в том, что ProcBOF
является абстрактным классом, а find
является абстрактным методом, поэтому я не могу понять, как смоделировать этот абстрактный методабстрактный класс.
public interface ProcessBo extends BOI {
//...
}
public abstract class ProcBOF extends BaseBof {
//...
public abstract ProcessBo find(TeraBo saleBo, long dataId, ReadSet readSet, Filter filter) throws FinderException;
}