Linguaggio

MethodHandles.ReflectAs(Class, MethodHandle) Metodo

Definizione

Esegue un "crack" deselezionato di un handle di metodo diretto.

[Android.Runtime.Register("reflectAs", "(Ljava/lang/Class;Ljava/lang/invoke/MethodHandle;)Ljava/lang/reflect/Member;", "", ApiSince=26)]
[Java.Interop.JavaTypeParameters(new System.String[] { "T extends java.lang.reflect.Member" })]
public static Java.Lang.Object? ReflectAs(Java.Lang.Class? expected, Java.Lang.Invoke.MethodHandle? target);
[<Android.Runtime.Register("reflectAs", "(Ljava/lang/Class;Ljava/lang/invoke/MethodHandle;)Ljava/lang/reflect/Member;", "", ApiSince=26)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "T extends java.lang.reflect.Member" })>]
static member ReflectAs : Java.Lang.Class * Java.Lang.Invoke.MethodHandle -> Java.Lang.Object

Parametri

expected
Class

oggetto classe che rappresenta il tipo di risultato desiderato T

target
MethodHandle

handle di metodo diretto per suddividere in componenti di riferimento simbolici

Valori restituiti

riferimento al metodo, al costruttore o all'oggetto field

Attributi

Commenti

Esegue un "crack" deselezionato di un handle di metodo diretto. Il risultato è come se l'utente avesse ottenuto un oggetto di ricerca in grado di violare l'handle del metodo di destinazione, chiamato sulla destinazione per ottenere il riferimento simbolico e quindi chiamato java.lang.invoke.MethodHandles.Lookup#revealDirect Lookup.revealDirectjava.lang.invoke.MethodHandleInfo#reflectAs MethodHandleInfo.reflectAs per risolvere il riferimento simbolico a un membro.

Se è presente un gestore della sicurezza, il checkPermission relativo metodo viene chiamato con un'autorizzazione ReflectPermission("suppressAccessChecks") .

Aggiunta nella versione 1.8.

Documentazione java per java.lang.invoke.MethodHandles.reflectAs(java.lang.Class<T>, java.lang.invoke.MethodHandle).

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.

Si applica a