MethodType Clase

Definición

Un tipo de método representa los argumentos y el tipo de valor devuelto aceptados y devueltos por un identificador de método, o los argumentos y el tipo de valor devuelto pasados y esperados por un llamador de controlador de métodos.

[Android.Runtime.Register("java/lang/invoke/MethodType", ApiSince=26, DoNotGenerateAcw=true)]
public sealed class MethodType : Java.Lang.Object, IDisposable, Java.Interop.IJavaPeerable, Java.IO.ISerializable, Java.Lang.Invoke.ITypeDescriptor.IOfMethod
[<Android.Runtime.Register("java/lang/invoke/MethodType", ApiSince=26, DoNotGenerateAcw=true)>]
type MethodType = class
    inherit Object
    interface ISerializable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
    interface ITypeDescriptor.IOfMethod
    interface ITypeDescriptor
Herencia
MethodType
Atributos
Implementaciones

Comentarios

Un tipo de método representa los argumentos y el tipo de valor devuelto aceptados y devueltos por un identificador de método, o los argumentos y el tipo de valor devuelto pasados y esperados por un llamador de controlador de métodos. Los tipos de método deben coincidir correctamente entre un identificador de método y todos sus llamadores, y las operaciones de JVM exigen esta coincidencia en, específicamente durante las llamadas a MethodHandle#invokeExact MethodHandle.invokeExact y MethodHandle#invoke MethodHandle.invoke, y durante la ejecución de invokedynamic instrucciones.

La estructura es un tipo de valor devuelto acompañado de cualquier número de tipos de parámetros. Los tipos (primitivo, voidy referencia) se representan mediante Class objetos . (Para facilitar la exposición, tratamos void como si fuera un tipo. De hecho, denota la ausencia de un tipo de valor devuelto).

Todas las instancias de MethodType son inmutables. Dos instancias son completamente intercambiables si comparan igual. La igualdad depende de la correspondencia en pares de los tipos de parámetros y devueltos y de nada más.

Este tipo solo se puede crear mediante métodos de fábrica. Todos los métodos de fábrica pueden almacenar en caché los valores, aunque no se garantiza el almacenamiento en caché. Algunos métodos de fábrica son estáticos, mientras que otros son métodos virtuales que modifican los tipos de método precursor, por ejemplo, cambiando un parámetro seleccionado.

Los métodos de fábrica que operan en grupos de tipos de parámetros se presentan sistemáticamente en dos versiones, de modo que se puedan usar matrices de Java y listas de Java para trabajar con grupos de tipos de parámetros. Los métodos parameterArray de consulta y parameterList también proporcionan una opción entre matrices y listas.

MethodType A veces, los objetos se derivan de instrucciones de código de bytes como invokedynamic, específicamente de las cadenas de descriptor de tipo asociadas a las instrucciones del grupo de constantes de un archivo de clase.

Al igual que las clases y las cadenas, los tipos de método también se pueden representar directamente en el grupo de constantes de un archivo de clase como constantes. Una instrucción puede cargar un ldc tipo de método que hace referencia a una entrada de grupo de constantes adecuada CONSTANT_MethodType . La entrada hace referencia a una CONSTANT_Utf8 ortografía para la cadena del descriptor. (Para obtener información completa sobre las constantes de tipo de método, consulte las secciones 4.4.8 y 5.4.3.5 de la Especificación de máquina virtual Java).

Cuando la JVM materializa un MethodType elemento a partir de una cadena de descriptor, todas las clases denominadas en el descriptor deben ser accesibles y se cargarán. (Pero no es necesario inicializar las clases, como sucede con ). CONSTANT_Class Esta carga puede producirse en cualquier momento antes de que el MethodType objeto se derive por primera vez.

Documentación de Java para java.lang.invoke.MethodType.

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el proyecto de código Project y que se usan según los términos Creative Commons 2.5 Attribution License.

Propiedades

Class

Devuelve la clase en tiempo de ejecución de este Objectobjeto .

(Heredado de Object)
Handle

Identificador de la instancia de Android subyacente.

(Heredado de Object)
HasPrimitives

Notifica si este tipo contiene un argumento primitivo o un valor devuelto.

HasWrappers

Notifica si este tipo contiene un argumento contenedor o un valor devuelto.

JniIdentityHashCode

Un tipo de método representa los argumentos y el tipo de valor devuelto aceptados y devueltos por un identificador de método, o los argumentos y el tipo de valor devuelto pasados y esperados por un llamador de controlador de métodos.

(Heredado de Object)
JniPeerMembers

Un tipo de método representa los argumentos y el tipo de valor devuelto aceptados y devueltos por un identificador de método, o los argumentos y el tipo de valor devuelto pasados y esperados por un llamador de controlador de métodos.

PeerReference

Un tipo de método representa los argumentos y el tipo de valor devuelto aceptados y devueltos por un identificador de método, o los argumentos y el tipo de valor devuelto pasados y esperados por un llamador de controlador de métodos.

(Heredado de Object)
ThresholdClass

Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código.

(Heredado de Object)
ThresholdType

Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código.

(Heredado de Object)

Métodos

AppendParameterTypes(Class[])

Busca o crea un tipo de método con tipos de parámetros adicionales.

AppendParameterTypes(IList<Class>)

Busca o crea un tipo de método con tipos de parámetros adicionales.

ChangeParameterType(Int32, Class)

Busca o crea un tipo de método con un solo tipo de parámetro diferente.

ChangeReturnType(Class)

Busca o crea un tipo de método con un tipo de valor devuelto diferente.

Clone()

Crea y devuelve una copia de este objeto.

(Heredado de Object)
DescriptorString()

Devuelve una cadena descriptor para este tipo de método.

Dispose()

Un tipo de método representa los argumentos y el tipo de valor devuelto aceptados y devueltos por un identificador de método, o los argumentos y el tipo de valor devuelto pasados y esperados por un llamador de controlador de métodos.

(Heredado de Object)
Dispose(Boolean)

Un tipo de método representa los argumentos y el tipo de valor devuelto aceptados y devueltos por un identificador de método, o los argumentos y el tipo de valor devuelto pasados y esperados por un llamador de controlador de métodos.

(Heredado de Object)
DropParameterTypes(Int32, Int32)

Busca o crea un tipo de método con algunos tipos de parámetros omitidos.

Equals(Object)

Indica si algún otro objeto es "igual a" este.

(Heredado de Object)
Erase()

Borra todos los tipos de referencia a Object.

FromMethodDescriptorString(String, ClassLoader)

Busca o crea una instancia de un tipo de método, dado la ortografía de su descriptor de código de bytes.

Generic()

Convierte todos los tipos, tanto de referencia como primitivos, en Object.

GenericMethodType(Int32)

Busca o crea un tipo de método cuyos componentes son todos Object.

GenericMethodType(Int32, Boolean)

Busca o crea un tipo de método cuyos componentes están Object con una matriz final Object[] opcional.

GetHashCode()

Devuelve un valor de código hash del objeto.

(Heredado de Object)
InsertParameterTypes(Int32, Class[])

Busca o crea un tipo de método con tipos de parámetros adicionales.

InsertParameterTypes(Int32, IList<Class>)

Busca o crea un tipo de método con tipos de parámetros adicionales.

InvokeMethodType(Class)

Busca o crea un tipo de método con los componentes especificados.

InvokeMethodType(Class, Class)

Busca o crea un tipo de método con los componentes especificados.

InvokeMethodType(Class, Class, Class[])

Busca o crea un tipo de método con los componentes especificados.

InvokeMethodType(Class, Class[])

Busca o crea una instancia del tipo de método especificado.

InvokeMethodType(Class, IList<Class>)

Busca o crea un tipo de método con los componentes especificados.

InvokeMethodType(Class, MethodType)

Busca o crea un tipo de método con los componentes especificados.

JavaFinalize()

Lo llama el recolector de elementos no utilizados en un objeto cuando la recolección de elementos no utilizados determina que no hay más referencias al objeto .

(Heredado de Object)
LastParameterType()

Devuelve el último tipo de parámetro de este tipo de método.

Notify()

Activa un único subproceso que está esperando en el monitor de este objeto.

(Heredado de Object)
NotifyAll()

Activa todos los subprocesos que están esperando en el monitor de este objeto.

(Heredado de Object)
ParameterArray()

Presenta los tipos de parámetros como una matriz (un método de conveniencia).

ParameterCount()

Devuelve el número de tipos de parámetros de este tipo de método.

ParameterList()

Presenta los tipos de parámetros como una lista (un método práctico).

ParameterType(Int32)

Devuelve el tipo de parámetro en el índice especificado, dentro de este tipo de método.

ReturnType()

Devuelve el tipo de valor devuelto de este tipo de método.

SetHandle(IntPtr, JniHandleOwnership)

Establece la propiedad Handle.

(Heredado de Object)
ToArray<T>()

Un tipo de método representa los argumentos y el tipo de valor devuelto aceptados y devueltos por un identificador de método, o los argumentos y el tipo de valor devuelto pasados y esperados por un llamador de controlador de métodos.

(Heredado de Object)
ToMethodDescriptorString()

Genera una representación de descriptor de código de bytes del tipo de método.

ToString()

Devuelve una representación de cadena del objeto.

(Heredado de Object)
UnregisterFromRuntime()

Un tipo de método representa los argumentos y el tipo de valor devuelto aceptados y devueltos por un identificador de método, o los argumentos y el tipo de valor devuelto pasados y esperados por un llamador de controlador de métodos.

(Heredado de Object)
Unwrap()

Convierte todos los tipos de contenedor en sus tipos primitivos correspondientes.

Wait()

Hace que el subproceso actual espere hasta que se despierte, normalmente por ser em notificado/em> o <em>interrumpido</em>.<><

(Heredado de Object)
Wait(Int64)

Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real.

(Heredado de Object)
Wait(Int64, Int32)

Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real.

(Heredado de Object)
Wrap()

Convierte todos los tipos primitivos en sus tipos contenedor correspondientes.

Implementaciones de interfaz explícitas

IJavaPeerable.Disposed()

Un tipo de método representa los argumentos y el tipo de valor devuelto aceptados y devueltos por un identificador de método, o los argumentos y el tipo de valor devuelto pasados y esperados por un llamador de controlador de métodos.

(Heredado de Object)
IJavaPeerable.DisposeUnlessReferenced()

Un tipo de método representa los argumentos y el tipo de valor devuelto aceptados y devueltos por un identificador de método, o los argumentos y el tipo de valor devuelto pasados y esperados por un llamador de controlador de métodos.

(Heredado de Object)
IJavaPeerable.Finalized()

Un tipo de método representa los argumentos y el tipo de valor devuelto aceptados y devueltos por un identificador de método, o los argumentos y el tipo de valor devuelto pasados y esperados por un llamador de controlador de métodos.

(Heredado de Object)
IJavaPeerable.JniManagedPeerState

Un tipo de método representa los argumentos y el tipo de valor devuelto aceptados y devueltos por un identificador de método, o los argumentos y el tipo de valor devuelto pasados y esperados por un llamador de controlador de métodos.

(Heredado de Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Un tipo de método representa los argumentos y el tipo de valor devuelto aceptados y devueltos por un identificador de método, o los argumentos y el tipo de valor devuelto pasados y esperados por un llamador de controlador de métodos.

(Heredado de Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Un tipo de método representa los argumentos y el tipo de valor devuelto aceptados y devueltos por un identificador de método, o los argumentos y el tipo de valor devuelto pasados y esperados por un llamador de controlador de métodos.

(Heredado de Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Un tipo de método representa los argumentos y el tipo de valor devuelto aceptados y devueltos por un identificador de método, o los argumentos y el tipo de valor devuelto pasados y esperados por un llamador de controlador de métodos.

(Heredado de Object)
ITypeDescriptor+IOfMethod.ChangeParameterType(Int32, Object)

Un tipo de método representa los argumentos y el tipo de valor devuelto aceptados y devueltos por un identificador de método, o los argumentos y el tipo de valor devuelto pasados y esperados por un llamador de controlador de métodos.

ITypeDescriptor+IOfMethod.ChangeReturnType(Object)

Un tipo de método representa los argumentos y el tipo de valor devuelto aceptados y devueltos por un identificador de método, o los argumentos y el tipo de valor devuelto pasados y esperados por un llamador de controlador de métodos.

ITypeDescriptor+IOfMethod.DropParameterTypes(Int32, Int32)

Un tipo de método representa los argumentos y el tipo de valor devuelto aceptados y devueltos por un identificador de método, o los argumentos y el tipo de valor devuelto pasados y esperados por un llamador de controlador de métodos.

ITypeDescriptor+IOfMethod.InsertParameterTypes(Int32, Object[])

Un tipo de método representa los argumentos y el tipo de valor devuelto aceptados y devueltos por un identificador de método, o los argumentos y el tipo de valor devuelto pasados y esperados por un llamador de controlador de métodos.

ITypeDescriptor+IOfMethod.ParameterArray()

Un tipo de método representa los argumentos y el tipo de valor devuelto aceptados y devueltos por un identificador de método, o los argumentos y el tipo de valor devuelto pasados y esperados por un llamador de controlador de métodos.

ITypeDescriptor+IOfMethod.ParameterList()

Un tipo de método representa los argumentos y el tipo de valor devuelto aceptados y devueltos por un identificador de método, o los argumentos y el tipo de valor devuelto pasados y esperados por un llamador de controlador de métodos.

ITypeDescriptor+IOfMethod.ParameterType(Int32)

Un tipo de método representa los argumentos y el tipo de valor devuelto aceptados y devueltos por un identificador de método, o los argumentos y el tipo de valor devuelto pasados y esperados por un llamador de controlador de métodos.

ITypeDescriptor+IOfMethod.ReturnType()

Un tipo de método representa los argumentos y el tipo de valor devuelto aceptados y devueltos por un identificador de método, o los argumentos y el tipo de valor devuelto pasados y esperados por un llamador de controlador de métodos.

Métodos de extensión

JavaCast<TResult>(IJavaObject)

Realiza una conversión de tipos comprobados en tiempo de ejecución de Android.

JavaCast<TResult>(IJavaObject)

Un tipo de método representa los argumentos y el tipo de valor devuelto aceptados y devueltos por un identificador de método, o los argumentos y el tipo de valor devuelto pasados y esperados por un llamador de controlador de métodos.

GetJniTypeName(IJavaPeerable)

Un tipo de método representa los argumentos y el tipo de valor devuelto aceptados y devueltos por un identificador de método, o los argumentos y el tipo de valor devuelto pasados y esperados por un llamador de controlador de métodos.

Se aplica a