JavaTM 2 Platform
Standard Ed. 6

java.lang.reflect
介面 InvocationHandler

所有已知實作類別:
CompositeDataInvocationHandler, EventHandler, MBeanServerInvocationHandler, RemoteObjectInvocationHandler

public interface InvocationHandler

InvocationHandler 是代理實例的調用處理程序 實作的介面。

每個代理實例都具有一個關聯的調用處理程序。對代理實例調用方法時,將對方法調用進行編碼並將其指派到它的調用處理程序的 invoke 方法。

從以下版本開始:
1.3
另請參見:
Proxy

方法摘要
 Object invoke(Object proxy, Method method, Object[] args)
          在代理實例上處理方法調用並返回結果。
 

方法詳細資訊

invoke

Object invoke(Object proxy,
              Method method,
              Object[] args)
              throws Throwable
在代理實例上處理方法調用並返回結果。在與方法關聯的代理實例上調用方法時,將在調用處理程序上調用此方法。

參數:
proxy - 在其上調用方法的代理實例
method - 對應於在代理實例上調用的介面方法的 Method 實例。Method 物件的宣告類別將是在其中宣告方法的介面,該介面可以是代理類別賴以繼承方法的代理介面的父級介面。
args - 套件含傳入代理實例上方法調用的參數值的物件陣列,如果介面方法不使用參數,則為 null。基本型別的參數被包裹在適當基本外覆器類別(如 java.lang.Integerjava.lang.Boolean)的實例中。
返回:
從代理實例的方法調用返回的值。如果介面方法的宣告返回型別是基本型別,則此方法返回的值一定是相應基本包裹物件類別的實例;否則,它一定是可分派到宣告返回型別的型別。如果此方法返回的值為 null 並且介面方法的返回型別是基本型別,則代理實例上的方法調用將拋出 NullPointerException。否則,如果此方法返回的值與上述介面方法的宣告返回型別不相容,則代理實例上的方法調用將拋出 ClassCastException
拋出:
Throwable - 從代理實例上的方法調用拋出的異常。該異常的型別必須可以分派到在介面方法的 throws 子句中宣告的任一異常型別或未經檢查的異常型別 java.lang.RuntimeExceptionjava.lang.Error。如果此方法拋出經過檢查的異常,該異常不可分派到在介面方法的 throws 子句中宣告的任一異常型別,代理實例的方法調用將拋出包含此方法曾拋出的異常的 UndeclaredThrowableException
另請參見:
UndeclaredThrowableException

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only