相关疑难解决方法(0)

在Java中实现通用接口

我有一个Java泛型问题我希望有人可以回答.请考虑以下代码:

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

public interface Handles<T extends Event>{
    public void handle(T event);
}
Run Code Online (Sandbox Code Playgroud)

我想像这样实现这个Handles接口:

public class AddressHandler implements Handles<AddressChanged>, Handles<AddressDiscarded>{
    public void handle(AddressChanged e){}
    public void handle(AddressDiscarded e){}
}
Run Code Online (Sandbox Code Playgroud)

但java不允许使用Generic两次实现Handles.我能够用C#实现这一点,但是如果不使用Reflection或instanceof和cast,就无法在java中找到解决方法.

在Java中有没有办法使用两个通用接口实现Handles接口?或者也许是另一种编写Handles接口的方法,以便完成最终结果?

java generics cqrs

27
推荐指数
2
解决办法
4万
查看次数

标签 统计

cqrs ×1

generics ×1

java ×1