Freigeben über


MethodHandles.Lookup.FindStatic(Class, String, MethodType) Methode

Definition

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>

Java-Dokumentation für java.lang.invoke.MethodHandles.Lookup.findStatic(java.lang.Class<?>, java.lang.String, java.lang.invoke.MethodType).

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.

Gilt für: