在我的Spring Boot应用程序中,假设我有Java接口:
public interface MyFilter<E extends SomeDataInterface>
Run Code Online (Sandbox Code Playgroud)
(一个很好的例子是Spring的公共接口ApplicationListener <E extends ApplicationEvent>)
我有几个实现,如:
@Component
public class DesignatedFilter1 implements MyFilter<SpecificDataInterface>{...}
@Component
public class DesignatedFilter2 implements MyFilter<SpecificDataInterface>{...}
@Component
public class DesignatedFilter3 implements MyFilter<AnotherSpecificDataInterface>{...}
Run Code Online (Sandbox Code Playgroud)
然后,在某些对象中,我有兴趣利用所有实现MyFilter <SpecificDataInterface> 但不是 MyFilter <AnotherSpecificDataInterface>的过滤器
这会是什么语法?
我很清楚泛型类型在编译时会从Java代码中删除.1.5+ JVM用于实现的信息(属性?)getGenericType等等?