【发布时间】:2012-01-17 00:44:20
【问题描述】:
newProxyInstance(ClassLoader loader, Class<?>[] interfaces, InvocationHandler h);
返回指定接口的代理类实例,该接口将方法调用分派到指定的调用处理程序。
我需要将此方法返回的实例封装(例如,封装到其他类中),以便它也可以扩展其他类。所以最终类将扩展一个类并实现指定的接口。
要扩展的类是:
public class IProxy {
ObjectRef oref;
public IProxy(ObjectRef oref) {
this.oref = oref;
}
}
所以过程应该是:
MyInterface() mi=(MyInterface) newProxyInstance(ClassLoader loader, Class<?>[] interfaces, InvocationHandler h);
// some magic trick
最后我希望有一个类的实例,它扩展了 IProxy 并实现了 mi 实现的所有接口。
【问题讨论】:
-
这是不可能的。您能否提供更多关于它为什么应该扩展该类的详细信息 - 可能还有其他方法可以实现您想要的。
标签: java interface encapsulation extend