Java-接口中可以接受任何子类的方法?

Java-接口中可以接受任何子类的方法?,java,events,generics,Java,Events,Generics,所以,我正在为我最近玩过的一些活动制作一个界面,到目前为止,它看起来是这样的 public interface Handler { void handle(Class<? extends Event> event); 公共接口处理程序{ 无效句柄(类) 这两个都不会接受Event的子类 你似乎在回避能解决你问题的最明显的解决方案 public interface Handle { void handle(Event event); } 或 公共接口句柄{ 无效句

所以,我正在为我最近玩过的一些活动制作一个界面,到目前为止,它看起来是这样的

public interface Handler {

    void handle(Class<? extends Event> event);
公共接口处理程序{
无效句柄(类)
这两个都不会接受Event的子类

你似乎在回避能解决你问题的最明显的解决方案

public interface Handle {
    void handle(Event event);
}

公共接口句柄{
无效句柄(T事件);
}
或者在Java8中,您可以使用内置的

Consumer<Event>
消费者

如果将
实现的目标类型参数化,第二个应该可以正常工作。不要使用原始类型。
public interface Handle<T extends Event> {
    void handle(T event);
}
Consumer<Event>