語言

MethodHandles.VarHandleInvoker(VarHandle+AccessMode, MethodType) 方法

定義

產生一個特殊的調用器方法句柄,可用於在任何與該存取模式類型相容的變體處理器上呼叫簽章多態存取模式方法。

[Android.Runtime.Register("varHandleInvoker", "(Ljava/lang/invoke/VarHandle$AccessMode;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;", "", ApiSince=33)]
public static Java.Lang.Invoke.MethodHandle? VarHandleInvoker(Java.Lang.Invoke.VarHandle.AccessMode? accessMode, Java.Lang.Invoke.MethodType? type);
[<Android.Runtime.Register("varHandleInvoker", "(Ljava/lang/invoke/VarHandle$AccessMode;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;", "", ApiSince=33)>]
static member VarHandleInvoker : Java.Lang.Invoke.VarHandle.AccessMode * Java.Lang.Invoke.MethodType -> Java.Lang.Invoke.MethodHandle

參數

accessMode
VarHandle.AccessMode

VarHandle 存取模式

type
MethodType

目標類型

傳回

一個適合調用任何存取模式類型可轉換為指定類型的 VarHandle 的存取模式方法的方法。

屬性

備註

產生一個特殊的調用器方法句柄,可用於在任何與該存取模式類型相容的變體處理器上呼叫簽章多態存取模式方法。 所產生的呼叫器會有一個型別,該型別正好等於所需的指定型別,但會接受一個型別為 VarHandle 的額外導引參數。 在呼叫目標前,如果存取模式類型與所需類型不同,呼叫者會根據需要套用參考鑄造,並像 asType 一樣進行 box、unbox 或 widen 原始值。 同樣地,回報值也會視需要進行轉換。 此方法等同於以下程式碼(雖然可能更有效率):publicLookup().findVirtual(VarHandle.class, accessMode.name(), 型別)

Java 參考 java.lang.invoke.MethodHandles.varHandleInvoker。

適用於