Мне было трудно думать о титуле для этого, так что простите меня.Подпись интерфейса интерфейса «неправильная»
У меня есть интерфейс со следующими методами:
public interface Algorithm<E,F> {
public Set<? extends Algorithm<E,F>> map(int numPartitions);
public F reduce(Set<? extends Algorithm<E,F>> partitions);
}
и класс, реализующий Algorithm
со следующими методами:
public class LinearSearch<T> implements Algorithm<List<T>, Integer> {
@Override
public Set<LinearSearch<T>> map(int numPartitions) {
return null;
}
@Override
public Integer reduce(Set<LinearSearch<T>> partitions) {
return null;
}
}
Теперь Странным является то, что Eclipse, жалуется на второй метод , reduce
.
The method reduce(Set<LinearSearch<T>>) of type LinearSearch<T> must override or implement a supertype method.
Это несмотря на то, что метод map
это хорошо. Так где я иду не так?