2015-11-15 3 views
0

В приведенном ниже коде Eclipse дает мне «hi» из класса com.test.SubClass не отменяет метод из своего суперкласса или интерфейсов, а аннотируется с помощью @Override ». ошибка. Но если я удалю @Override в SubClass, он не будет жаловаться и обрабатывает метод как метод Overriding. Есть ли способ в Eclipse, чтобы я мог игнорировать эти ошибки аннотаций с помощью дженериков?Почему Eclipse дает мне эту ошибку аннотации при переопределении

interface Base<T extends Object> { 

    void hi(T t); 

} 
class SubClass implements Base<String> { 

    @Override 
    public void hi(Object o) { 

    } 

} 

ответ

0

Вы должны изменить

public void hi(Object o) 

в

public void hi(String o) // or String s 
+0

Да, я понимаю. Но я не понимаю, почему удаление @Override будет работать, и это будет относиться к нему как к первостепенному методу. – Ping

+0

не работает, даже если вы удалите 'Override'. –

+0

Извините, я забыл упомянуть, что они оба класса Groovy – Ping

Смежные вопросы