javassist не может установить суперкласс для класса, который реализует универсальный интерфейс
код типа:
public interface A<T>{
T a();
}
public class Base {
//....
}
public class B extends Base implements A<String> {
//...
}
public class C extends Base {
}
код 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"));
}
Я хочу установить класс C в качестве суперкласса для класса B от javassist, но это не работает!