blob: 8c28a160b8b815efed4da27b4a7e9aaeba3e1ec0 [file] [log] [blame]
import java.io.Serializable;
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
import java.lang.reflect.Proxy;
import java.util.ArrayList;
public class TransferableList extends ArrayList {
private static class NullInvocationHandler implements InvocationHandler, Serializable {
public Object invoke(Object proxy, Method method, Object[] args)
throws Throwable {
throw new Error("UNIMPLEMENTED");
}
}
public TransferableList() {
try {
InvocationHandler handler = new NullInvocationHandler();
Class<?> proxyClass = Proxy.getProxyClass(
ListInterface.class.getClassLoader(),
new Class[] { ListInterface.class, AnotherInterface.class });
AnotherInterface obj = (AnotherInterface) proxyClass.
getConstructor(new Class[]{InvocationHandler.class}).
newInstance(handler);
} catch (Exception e) {
e.printStackTrace();
}
}
}
interface ListInterface extends Serializable {}