是否可以从其他类中包含的方法动态组合一个类?
例如.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(){}
}
Run Code Online (Sandbox Code Playgroud)
有没有办法从A,B和C类中提取MethodInfos,并以某种方式直接将它们附加到D类?如果是这样的话?