2012-02-23 76 views
1

我有一個接口,它的實現是在運行時決定的,並且被賦予一個代理對象作爲它的動態實現。我想檢索此代理對象實現的接口,以瞭解接口中的方法。有什麼辦法可以在Java中這樣做。在Java中檢索代理調用對象的接口類

回答

3

嘗試此(使用普通反射):

Class<?>[] interfaces = proxyInstance.getClass().getInterfaces(); 

對於以下的代碼:

Object proxyInstance = Proxy.newProxyInstance(
    getClass().getClassLoader(), 
    new Class<?>[] {Serializable.class}, 
    new InvocationHandler() /**/); 

它正確地返回java.io.Serializable接口。