是否可以从其他类中包含的方法动态组合一个类?
例如。A、B 和 C 类具有命名的公共方法,以便于识别它们。它们需要被提取并添加到 D 类中。D 类包含所有实现逻辑,可以进一步传递到只接受 D 类的单个实例并将这些方法动态绑定到其他函数的系统中。
需要明确的是,这不是我正在寻找的继承。我从字面上说需要将具有不同名称的方法塞入一个类中。我传递给它的系统理解这些命名约定并动态绑定它们(对我来说这是一个黑匣子)。
我将沿着从 A、B 和 C 中提取方法的路径,将它们与内存中 D 类的源动态组合,并将它们编译成一个新的 D 类,然后创建 D 的一个实例并将其向前传递。
public class A{ public void EXPORT_A_DoSomething(){} }
public class B{ public void EXPORT_B_DoSomethingElse(){}}
public class C{ public void EXPORT_C_DoAnything(){}}
//should become
public class D{
public void EXPORT_A_DoSomething(){}
public void EXPORT_B_DoSomethingElse(){}
public void EXPORT_C_DoAnything(){}
}
有没有办法从 A、B 和 C 类中提取 MethodInfos 并以某种方式直接将它们附加到 D 类?如果有怎么办?