Когда я попытался сделать Controller таким образом, я получил сообщение: Слушатель не может наследоваться с разными аргументами AlfaMsg и GammaMsg. Я читаю некоторые шаблоны, но это мне не помогает. Как я могу реализовать эту идею?
public abstract class Msg {
}
public class AlfaMsg extends Msg{
}
public class GammaMsg extends Msg{
}
public interface Listener<T extends Msg> {
void update(String message, T msg);
}
public interface ListenerAlfa extends Listener<AlfaMsg> {
@Override
void update(String message, AlfaMsg deviceMessage);
}
public interface ListenerGamma extends Listener<GammaMsg> {
@Override
void update(String message, GammaMsg deviceMessage);
}
public class Controller implements ListenerAlfa, ListenerGamma{
@Override
void update(String message, AlfaMsg deviceMessage){
}
@Override
void update(String message, GammaMsg deviceMessage){
}
}