MethodHandles.Lookup.UnreflectSpecial(Method, Class) Método

Definición

Genera un identificador de método para un método reflejado.

[Android.Runtime.Register("unreflectSpecial", "(Ljava/lang/reflect/Method;Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;", "", ApiSince=26)]
public Java.Lang.Invoke.MethodHandle UnreflectSpecial(Java.Lang.Reflect.Method m, Java.Lang.Class specialCaller);
[<Android.Runtime.Register("unreflectSpecial", "(Ljava/lang/reflect/Method;Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;", "", ApiSince=26)>]
member this.UnreflectSpecial : Java.Lang.Reflect.Method * Java.Lang.Class -> Java.Lang.Invoke.MethodHandle

Parámetros

m
Method

el método reflejado

specialCaller
Class

la clase que llama nominalmente al método

Devoluciones

un identificador de método que puede invocar el método reflejado

Atributos

Comentarios

Genera un identificador de método para un método reflejado. Omitirá las comprobaciones de invalidación de métodos en el receptor, como si se llamara desde una invokespecial instrucción desde dentro del especificado specialCallerexplícitamente. El tipo del identificador de método será el del método, con un tipo de receptor adecuadamente restringido antepuesto. (El tipo de receptor será specialCaller o un subtipo). Si no se establece la marca del método, la comprobación de accessible acceso se realiza inmediatamente en nombre de la clase de búsqueda, como si invokespecial se vinculara la instrucción.

Antes de la resolución de métodos, si la clase de llamador especificada explícitamente no es idéntica a la clase de búsqueda, o si este objeto de búsqueda no tiene privilegios de acceso privado, se produce un error en el acceso.

El identificador de método devuelto tendrá la aridad de variable MethodHandle#asVarargsCollector si y solo si se establece el bit modificador de arity de la variable del método (0x0080).

Java documentación para java.lang.invoke.MethodHandles.Lookup.unreflectSpecial(java.lang.reflect.Method, java.lang.Class<?>).

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.

Se aplica a