MethodHandles.Lookup.FindStatic(Class, String, MethodType) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Erzeugt ein Methodenhandle für eine statische Methode.
[Android.Runtime.Register("findStatic", "(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;", "", ApiSince=26)]
public Java.Lang.Invoke.MethodHandle FindStatic (Java.Lang.Class refc, string name, Java.Lang.Invoke.MethodType type);
[<Android.Runtime.Register("findStatic", "(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;", "", ApiSince=26)>]
member this.FindStatic : Java.Lang.Class * string * Java.Lang.Invoke.MethodType -> Java.Lang.Invoke.MethodHandle
Parameter
- refc
- Class
die Klasse, von der aus auf die Methode zugegriffen wird
- name
- String
der Name der Methode
- type
- MethodType
der Typ der Methode
Gibt zurück
das gewünschte Methodenhandle
- Attribute
Hinweise
Erzeugt ein Methodenhandle für eine statische Methode. Der Typ des Methodenhandles ist die der Methode. (Da statische Methoden keine Empfänger verwenden, wird kein zusätzliches Empfängerargument in den Methodenhandletyp eingefügt, wie es mit #findVirtual findVirtual
oder #findSpecial findSpecial
.) Auf die Methode und alle zugehörigen Argumenttypen muss für das Nachschlageobjekt zugegriffen werden kann.
Der zurückgegebene Methodenhandle weist die Variable MethodHandle#asVarargsCollector auf, wenn und nur dann, wenn der Variablenvariablen-Modifizierer bit (0x0080
) der Methode festgelegt ist.
Wenn das zurückgegebene Methodenhandle aufgerufen wird, wird die Klasse der Methode initialisiert, wenn sie noch nicht initialisiert wurde.
<b>Beispiel:</b><Blockquote>
{@code
import static java.lang.invoke.MethodHandles.*;
import static java.lang.invoke.MethodType.*;
...
MethodHandle MH_asList = publicLookup().findStatic(Arrays.class,
"asList", methodType(List.class, Object[].class));
assertEquals("[x, y]", MH_asList.invoke("x", "y").toString());
}
</blockquote>
Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die vom Android Open Source-Projekt erstellt und freigegeben werden und gemäß den in der Creative Commons 2.5 Attribution License beschriebenen Begriffen verwendet werden.