MethodHandles.Lookup.UnreflectSpecial(Method, Class) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Produz um identificador de método para um método refletido.
[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
o método refletido
- specialCaller
- Class
a classe chamando nominalmente o método
Retornos
um identificador de método que pode invocar o método refletido
- Atributos
Comentários
Produz um identificador de método para um método refletido. Ele ignorará as verificações de substituição de métodos no receptor, como se fosse chamado de uma instrução invokespecial de dentro do especificado explicitamente specialCaller. O tipo do identificador do método será o do método, com um tipo de receptor adequadamente restrito prefixado. (O tipo de receptor será specialCaller ou um subtipo.) Se o sinalizador do accessible método não estiver definido, a verificação de acesso será executada imediatamente em nome da classe de pesquisa, como se invokespecial a instrução estivesse sendo vinculada.
Antes da resolução do método, se a classe de chamador explicitamente especificada não for idêntica à classe de pesquisa ou se esse objeto de pesquisa não tiver privilégios de acesso privado, o acesso falhará.
O identificador de método retornado terá aridade da variável MethodHandle#asVarargsCollector se e somente se o bit modificador de aridade variável do método (0x0080) estiver definido.
Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Project Open Source do Open Source e usadas de acordo com os termos descritos na Creative Commons 2.5.