我需要一种如下所示的方法:
methodA(Class<? extends ClassA> clzz, Consumer<? extends ClassA> consumer) { //... AKKA message handler .match(clzz, s -> consumer.accept(s);) }
这不会编译,我知道为什么,我想要的是:
TypeParameter T = ? extends ClassA; methodA(Class<T> clzz, Consumer<T> consumer){//...}
有办法做到这一点吗?
你是说像这样的事吗?
<T extends ClassA> methodA(Class<T> clzz, Consumer<T> consumer) { //... AKKA message handler .match(clzz, s -> consumer.accept(s);) }
Consumer<? super T> )
Consumer<? super T>