不使用接口创建 Mixin

Create Mixin without using interfaces

在 Java 中,我有一些遗留的 classes(来自我无法编辑的第 3 方库)没有 implement 任何接口,但我想创建一个混合。

我看过 cglib for creating mixins, but this tutorial

cglib Mixins allow the combination of several objects into a single object. However, in order to do so, those objects must be backed by interfaces

那么有谁知道如何创建两个具体 classes 的 mixin,它们都没有实现任何接口?


我一直在考虑使用字节码生成从具体的 class 中自动 extract an interface,然后我可以将其输入到 cglib 中,但我也不知道该怎么做...

不需要花哨的东西,只是一些无聊的驴子工作。

创建您要针对其进行编程的接口,然后创建具体的 类 以使用遗留库实现它们。

如果您真的愿意,您现在可以使用 cglib 创建 mixins,但更重要的是,您可以开发您的应用程序而无需使其强烈依赖于旧的第 3 方库。