語言

IInvocationHandler.Invoke(Object, Method, Object[]) 方法

定義

對代理實例執行方法調用並回傳結果。

[Android.Runtime.Register("invoke", "(Ljava/lang/Object;Ljava/lang/reflect/Method;[Ljava/lang/Object;)Ljava/lang/Object;", "GetInvoke_Ljava_lang_Object_Ljava_lang_reflect_Method_arrayLjava_lang_Object_Handler:Java.Lang.Reflect.IInvocationHandlerInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")]
public Java.Lang.Object? Invoke(Java.Lang.Object? proxy, Java.Lang.Reflect.Method? method, Java.Lang.Object[]? args);
[<Android.Runtime.Register("invoke", "(Ljava/lang/Object;Ljava/lang/reflect/Method;[Ljava/lang/Object;)Ljava/lang/Object;", "GetInvoke_Ljava_lang_Object_Ljava_lang_reflect_Method_arrayLjava_lang_Object_Handler:Java.Lang.Reflect.IInvocationHandlerInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")>]
abstract member Invoke : Java.Lang.Object * Java.Lang.Reflect.Method * Java.Lang.Object[] -> Java.Lang.Object

參數

proxy
Object

方法被呼叫的代理實例

method
Method

Method該實例對應於代理實例所呼叫的介面方法。 物件的 Method 宣告類別將是該方法宣告的介面,該介面可能是代理類別繼承該方法的代理介面的超介面。

args
Object[]

一組物件陣列,包含在代理實例中方法調用時傳遞的參數值,或 null 若介面方法不接受參數,則為該物件。 原始型態的參數會被適當原始包裝類別的實例包裹,例如 java.lang.Integer 或 java.lang.Boolean。

傳回

從代理實例的方法調用中回傳的值。 如果介面方法宣告的回傳類型是原始型別,則該方法回傳的值必須是對應原始包裝類別的實例;否則,必須是可指派到宣告回傳類型中的型別。 如果此方法回傳的值為 , null 且介面方法的回傳類型為原始,則 a NullPointerException 會被代理實例的方法呼叫拋出。 若此方法回傳的值與介面方法宣告的回傳類型不相容,則代理實例的方法呼叫會拋出 a ClassCastException 。

屬性

例外狀況

從代理中拋出的 exception。 該例外必須與所呼叫方法中宣告的例外類型之一或任何未被檢查的例外類型相匹配。 若不然,則擲出UndeclaredThrowableException

備註

對代理實例執行方法調用並回傳結果。 當該方法在與其關聯的代理實例被呼叫時,會被呼叫處理程序呼叫。

Java 文件 java.lang.reflect.InvocationHandler.invoke(java.lang.Object, java.lang.reflect.Method, java.lang.Object[])。

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於