MethodHandles.Lookup.FindStatic(Class, String, MethodType) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Produce un handle di metodo per un metodo statico.
[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
Parametri
- refc
- Class
classe a cui si accede al metodo
- name
- String
nome del metodo
- type
- MethodType
tipo del metodo
Restituisce
handle del metodo desiderato
- Attributi
Commenti
Produce un handle di metodo per un metodo statico. Il tipo dell'handle del metodo sarà quello del metodo . Poiché i metodi statici non accettano ricevitori, non è presente alcun argomento ricevitore aggiuntivo inserito nel tipo di handle del metodo, perché esiste con #findVirtual findVirtual
o #findSpecial findSpecial
. Il metodo e tutti i relativi tipi di argomento devono essere accessibili all'oggetto di ricerca.
L'handle del metodo restituito avrà la variabile MethodHandle#asVarargsCollector se e solo se è impostato il bit del modificatore di arità della variabile del metodo (0x0080
).
Se viene richiamato l'handle del metodo restituito, la classe del metodo verrà inizializzata, se non è già stata inizializzata.
<b>Esempio:</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>
Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.