我正在浏览类中的方法,然后在另一个地方生成具有不同名称的方法 - 参数和返回类型相同,我通过 method.getParameters()、method.isGeneric() 等检查它们。
因此,在原始类中定义如下:
public void fun1(T a, T b){ //something...}
我想得到:
public <T> void anotherName(T a, T b) { //something }
这里有一个相关的问题,它演示了如何在类的开头添加 <T>:Sun CodeModel generic method
JTypeVar t = checkedMethod.generify("T");
checkedMethod.param(jCodeModel.ref("LinkedList").narrow(t), "list");
但是,我想在一个循环中检查我的所有方法并确定它们中的哪些具有泛型类型,因此在名称之前需要一个 <T>。如果我将所有方法都泛化,就会出现这样的情况:
public <String> String fun2(String a, String b);
然后不清楚我是否要分配
String s = fun2("s","s");
有没有办法检查给定类型是否是已知的 Java 类型?