Я прочитал другие вопросы, связанные со стиранием, но мне до сих пор не ясно, почему я получаю ошибку компиляции в классе ниже. Другие вопросы касаются методов, которые на самом деле используют общий тип, тогда как я просто пытаюсь реализовать метод, используя ту же самую сигнатуру. Кто-нибудь может объяснить?
Ошибка компиляции -> конфликт имен: bar(java.util.Set) в test.Baz и bar(java.util.Set) в test.Foo имеют одинаковое стирание, но ни один из них не переопределяет другой
import java.util.Set;
public class test {
public interface Foo<T> {
public void bar(Set<String> s);
}
public abstract class Baz implements Foo {
public void bar(Set<String> s) {}
}
}