在我的程序中,我处理类和原始类型。如果程序找到一个类,它只需执行以下调用之一:
Class.forName(classname)
cc.toClass()
cc
的一个实例在哪里CtClass
但是,如果它找到原始类型,情况会变得更糟:
Class.forName
不可用,它不能与原始类型一起使用。cc.toClass()
返回null
可以从原始类型包装器类中调用该TYPE
字段,但是如何使用反射来做到这一点?
这是我的代码:
CtClass cc;//Obtained from caller code
Class<?> classParam;
if (cc.isprimitive()) {
classParam= ?? // How can I get TYPE field value with reflection ?
} else {
String nomClasseParam = cc.getName();
if (nomClasseParam.startsWith("java")) {
classeParam = Class.forName(nomClasseParam);
} else {
classeParam = cc.toClass();
}
}
Javassist 3.12.0.GA