我需要检查方法第一个参数的类型是否List<Class<? extends Exception>>
。任何人都可以提出比将其与字符串进行比较更好的解决方案吗?
Method m = Foo.class.getMethod("m1", List.class);
if (m.getGenericParameterTypes()[0].toString().equals("java.util.List<java.lang.Class<? extends java.lang.Exception>>")) {
...
}
我的意思是这样的:
List.class.isAssignableFrom((Class<?>)((ParameterizedType)m.getGenericParameterTypes()[0]).getRawType()));
这检查它是否是一个列表。但是我怎样才能检查Class<? extends Exception>
类型的一部分呢?