La mise en œuvre de Génériques de l'Interface en Java

J'ai un Java génériques question j'espérais que quelqu'un pourrait répondre. Considérons le code suivant:

public interface Event{}
public class AddressChanged implements Event{}
public class AddressDiscarded implements Event{}

public interface Handles<T extends Event>{
    public void handle(T event);
}

Je veux mettre en œuvre cette Poignées interface comme ceci:

public class AddressHandler implements Handles<AddressChanged>, Handles<AddressDiscarded>{
    public void handle(AddressChanged e){}
    public void handle(AddressDiscarded e){}
}

Mais java n'autorise pas la mise en œuvre de Poignées à deux reprises avec le Générique. J'ai été en mesure d'accomplir ceci avec C#, mais n'arrivent pas à trouver une solution de contournement en java sans l'aide de la Réflexion ou instanceof et le moulage.

Est-il un moyen en java pour mettre en œuvre les Poignées de l'interface en utilisant à la fois des interfaces génériques? Ou peut-être une autre façon d'écrire les Poignées de l'interface de sorte que le résultat final peut être accompli?

InformationsquelleAutor whistlenuts | 2010-12-01