У меня есть следующая структура классов.Дженерики переопределяют путаницу
public abstract class X { }
public class Y extends X { }
И я хочу сделать следующее:
public abstract class Action {
public abstract <T extends X> void execute(T t);
}
public class SomeAction extends Action {
public void execute(Y y) { }
}
Компилятор дает мне следующую ошибку:
The Type
SomeAction
must implement the inherited abstract methodAction.execute(T)
Я хочу, чтобы переопределить execute()
, но я хочу, чтобы параметр быть подклассом X
.
Что я здесь делаю неправильно?
Спасибо, что сделали :) – AM01