我可以在 ByteBuddy 中重新定义扩展哪个 super class 吗?

Can I redefine which super class to extend in ByteBuddy?

如标题所示,使用 ByteBuddy 重新定义 class 时,我可以重新定义 extends 子句吗?

也就是将classAA extends B重新定义为A extends C

我读过 javadoc,它只建议一个 DynamicType.Builder.implement 机制,它只接受额外的接口,但它不适用于 superclasses。

有人试过吗?

谢谢。

这是一个相当困难的翻译,因为这会影响 class 的很大一部分,当涉及到超级 class 访问和超级方法调用时。

您可以在 ClassVisitor 的访问方法上使用 ASM 注册 ClassVisitorWrapper 并更改 属性。