如何使用反射查找读取方法的Foo和泛型类?
public void contactUsAvail(List<Foo> list) {
// method block
}
答案 0 :(得分:0)
您不能,因为参数类型Foo
在编译时被删除。类型参数仅在Java中是编译器提示,不会保留以供执行。
但是你可以通过传递Foo
作为方法参数来为你的方法提供一个提示:
public void <F extends Foo>contactUsAvail(Class<F> type, List<F> list) {
if(SubclassOfFoo.class.isAssignableFrom(type)) {
//all elements in 'list' inherit from 'SubclassOfFoo'
}
}