Generics javassist可以';t为实现泛型接口的类设置超类
javassist无法为实现泛型接口的类设置超类 代码如下:Generics javassist可以';t为实现泛型接口的类设置超类,generics,interface,javassist,Generics,Interface,Javassist,javassist无法为实现泛型接口的类设置超类 代码如下: public interface A<T>{ T a(); } public class Base { //.... } public class B extends Base implements A<String> { //... } public class C extends Base { } 我想通过javassist将类C设置为类B的超类,但它不起作用 你能发布一些代码来演示你想
public interface A<T>{
T a();
}
public class Base {
//....
}
public class B extends Base implements A<String> {
//...
}
public class C extends Base {
}
我想通过javassist将类C设置为类B的超类,但它不起作用 你能发布一些代码来演示你想做什么吗。什么不起作用了?谢谢,如上所述,我想用C类替换B的超类基类,但它不起作用。运行javassist代码时不会发生任何错误。
CtClass c = pool.getCtClass("com.test.B");
if (c.isFrozen()) {
c.defrost();
}
if (c.getSuperclass().getName().equals("com.test.Base")) {
c.setSuperclass(pool.getCtClass("com.test.C"));
}