MethodHandles.Lookup.FindStatic(Class, String, MethodType) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Produit un handle de méthode pour une méthode statique.
[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
Paramètres
- refc
- Class
la classe à partir de laquelle la méthode est accessible
- name
- String
nom de la méthode
- type
- MethodType
type de la méthode
Retours
handle de méthode souhaité
- Attributs
Remarques
Produit un handle de méthode pour une méthode statique. Le type du handle de méthode est celui de la méthode. (Étant donné que les méthodes statiques ne prennent pas de récepteurs, aucun argument de récepteur supplémentaire n’est inséré dans le type de handle de méthode, car il y aurait ou #findVirtual findVirtual
#findSpecial findSpecial
.) La méthode et tous ses types d’arguments doivent être accessibles à l’objet de recherche.
Le handle de méthode retourné a MethodHandle#asVarargsCollector variable arity if and only if the variable arity modificateur bit () is0x0080
set.
Si le handle de méthode retourné est appelé, la classe de la méthode est initialisée, si elle n’a pas déjà été initialisée.
<b>Example :</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>
Les parties de cette page sont des modifications basées sur le travail créé et partagé par le projet Android Open Source et utilisés en fonction des termes décrits dans la licence d’attribution Creative Commons 2.5.