Язык

MethodHandles Класс

Определение

Этот класс состоит исключительно из статических методов, которые работают с дескрипторами методов или возвращаются.

[Android.Runtime.Register("java/lang/invoke/MethodHandles", ApiSince=26, DoNotGenerateAcw=true)]
public class MethodHandles : Java.Lang.Object
[<Android.Runtime.Register("java/lang/invoke/MethodHandles", ApiSince=26, DoNotGenerateAcw=true)>]
type MethodHandles = class
    inherit Object
Наследование
MethodHandles
Атрибуты

Комментарии

Этот класс состоит исключительно из статических методов, которые работают с дескрипторами методов или возвращаются. Они делятся на несколько категорий: <методы ul><li>Lookup, которые помогают создавать дескриптора методов и полей. <методы li>Combinator, которые объединяют или преобразуют существующие дескрипторы методов в новые. <li>Другие методы фабрики для создания дескрипторов методов, которые эмулируют другие распространенные операции JVM или шаблоны потока управления. </ul>

Добавлено в версии 1.7.

Java документации по java.lang.invoke.MethodHandles.

Части этой страницы — это изменения на основе работы, созданной и общей Project и используемых в соответствии с условиями, описанными в разделе "".

Конструкторы

Имя. Описание
MethodHandles(IntPtr, JniHandleOwnership)

Этот класс состоит исключительно из статических методов, которые работают с дескрипторами методов или возвращаются.

Свойства

Имя. Описание
Class

Возвращает класс среды выполнения этого Objectобъекта.

(Унаследовано от Object)
Handle

Дескриптор базового экземпляра Android.

(Унаследовано от Object)
JniIdentityHashCode

Возвращает хэш-код удостоверения, назначенный этому Java одноранговой среде выполнения взаимодействия.

(Унаследовано от Object)
JniManagedPeerState

Этот класс состоит исключительно из статических методов, которые работают с дескрипторами методов или возвращаются.

(Унаследовано от JavaObject)
JniPeerMembers

Этот класс состоит исключительно из статических методов, которые работают с дескрипторами методов или возвращаются.

PeerReference

Возвращает ссылку на объект JNI для этого Java однорангового узла.

(Унаследовано от Object)
ThresholdClass

Этот класс состоит исключительно из статических методов, которые работают с дескрипторами методов или возвращаются.

ThresholdType

Этот класс состоит исключительно из статических методов, которые работают с дескрипторами методов или возвращаются.

Методы

Имя. Описание
ArrayConstructor(Class)

Создает дескриптор метода, создающий массивы требуемого типа, как будто по байт-коду anewarray .

ArrayElementGetter(Class)

Создает дескриптор метода, предоставляющий доступ для чтения к элементам массива.

ArrayElementSetter(Class)

Создает дескриптор метода, предоставляющий доступ на запись к элементам массива.

ArrayElementVarHandle(Class)

Создает VarHandle, предоставляющий доступ к элементам массива типов arrayClass.

ArrayLength(Class)

Создает дескриптор метода, возвращающий длину массива, как будто по байт-коду arraylength .

ByteArrayViewVarHandle(Class, ByteOrder)

Создает VarHandle, предоставляющий доступ к элементам byte[] массива, просматриваемого как если бы он был другим примитивным типом массива, например int[] или long[].

ByteBufferViewVarHandle(Class, ByteOrder)

Создает VarHandle, предоставляющий доступ к элементам ByteBuffer представления, как если бы это был массив элементов другого примитивного типа byteкомпонента, например int[] или long[].

CatchException(MethodHandle, Class, MethodHandle)

Делает дескриптор метода, который адаптирует дескриптор целевого метода, запустив его внутри обработчика исключений.

Clone()

Создает и возвращает копию этого объекта.

(Унаследовано от Object)
CollectArguments(MethodHandle, Int32, MethodHandle)

Адаптирует целевой дескриптор метода путем предварительной обработки под последовательности его аргументов с фильтром (другим дескриптором метода).

Constant(Class, Object)

Создает дескриптор метода запрошенного типа возвращаемого значения, который возвращает заданное константное значение при каждом вызове.

Construct(JniObjectReference, JniObjectReferenceOptions)

Этот класс состоит исключительно из статических методов, которые работают с дескрипторами методов или возвращаются.

(Унаследовано от JavaObject)
CountedLoop(MethodHandle, MethodHandle, MethodHandle, MethodHandle)

Создает цикл, который подсчитывает диапазон чисел.

CountedLoop(MethodHandle, MethodHandle, MethodHandle)

Создает цикл, который выполняет заданное число итераций.

Dispose()

Освобождает ресурсы, удерживаемые этим Java одноранговым узлом.

(Унаследовано от Object)
Dispose(Boolean)

Освобождает ресурсы, удерживаемые этим Java одноранговым узлом.

(Унаследовано от Object)
DisposeUnlessReferenced()

Этот класс состоит исключительно из статических методов, которые работают с дескрипторами методов или возвращаются.

(Унаследовано от JavaObject)
DoWhileLoop(MethodHandle, MethodHandle, MethodHandle)

do-while Создает цикл из инициализатора, текста и предиката.

DropArguments(MethodHandle, Int32, Class[])

Создает дескриптор метода, который будет удалять некоторые фиктивные аргументы перед вызовом другого заданного целевого дескриптора.

DropArguments(MethodHandle, Int32, IList<Class>)

Создает дескриптор метода, который будет удалять некоторые аргументы заполнителя перед вызовом другого заданного целевого дескриптора метода.

DropArgumentsToMatch(MethodHandle, Int32, IList<Class>, Int32)

Адаптирует дескриптор целевого метода для сопоставления заданного списка типов параметров.

DropReturn(MethodHandle)

Удалите возвращаемое значение целевого дескриптора (при наличии).

Empty(MethodType)

Создает дескриптор метода запрошенного типа, который игнорирует любые аргументы, не делает ничего и возвращает подходящее значение по умолчанию в зависимости от типа возвращаемого значения.

Equals(Object)

Этот класс состоит исключительно из статических методов, которые работают с дескрипторами методов или возвращаются.

(Унаследовано от JavaObject)
Equals(Object)

Указывает, равен ли другой объект этому объекту.

(Унаследовано от Object)
ExactInvoker(MethodType)

Создает специальный <дескриптор метода em>invoker/em<, который можно использовать для вызова любого дескриптора> метода заданного типа, как будто.MethodHandle#invokeExact invokeExact

ExplicitCastArguments(MethodHandle, MethodType)

Создает дескриптор метода, который адаптирует тип данного дескриптора метода к новому типу по парным аргументам и преобразованию возвращаемого типа.

FilterArguments(MethodHandle, Int32, MethodHandle[])

Адаптирует целевой дескриптор метода путем предварительной обработки одного или нескольких его аргументов, каждый из которых имеет собственную унарную функцию фильтра, а затем вызывает целевой объект с каждым предварительно обработанным аргументом, замененным результатом соответствующей функции фильтра.

FilterReturnValue(MethodHandle, MethodHandle)

Адаптирует целевой дескриптор метода путем последующей обработки возвращаемого значения (при наличии) с фильтром (другим дескриптором метода).

FoldArguments(MethodHandle, Int32, MethodHandle)

Адаптирует дескриптор целевого метода путем предварительной обработки некоторых его аргументов, начиная с заданной позиции, а затем вызывая целевой объект с результатом предварительной обработки, вставленным в исходную последовательность аргументов непосредственно перед сложенными аргументами.

FoldArguments(MethodHandle, MethodHandle)

Адаптирует целевой дескриптор метода путем предварительной обработки некоторых его аргументов, а затем вызывает целевой объект с результатом предварительной обработки, вставленным в исходную последовательность аргументов.

GetHashCode()

Возвращает хэш-значение кода для объекта.

(Унаследовано от Object)
GuardWithTest(MethodHandle, MethodHandle, MethodHandle)

Делает дескриптор метода, который адаптирует дескриптор целевого метода, охраняя его с помощью теста, логического дескриптора метода.

Identity(Class)

Создает дескриптор метода, который возвращает его единственный аргумент при вызове.

InsertArguments(MethodHandle, Int32, Object[])

Предоставляет дескриптор целевого метода с одним или несколькими <аргументами>< с привязкой em>заранее к вызову дескриптора метода.

InvokeLookup()

Lookup lookup object Возвращает полную возможность эмулировать все поддерживаемые байт-коды поведения вызывающего объекта.

Invoker(MethodType)

Создает специальный <дескриптор метода em>invoker/em<, который можно использовать для вызова любого дескриптора> метода, совместимого с заданным типом, как будто.MethodHandle#invoke invoke

IteratedLoop(MethodHandle, MethodHandle, MethodHandle)

Создает цикл, диапазоны по значениям, создаваемым объектом Iterator<T>.

JavaFinalize()
Устаревшие.

Вызывается сборщиком мусора в объекте, когда сборка мусора определяет, что больше ссылок на объект нет.

(Унаследовано от Object)
Loop(MethodHandle[][])

Создает дескриптор метода, представляющий цикл с несколькими переменными цикла, которые обновляются и проверяются при каждой итерации.

Notify()

Просыпается один поток, ожидающий монитора этого объекта.

(Унаследовано от Object)
NotifyAll()

Просыпает все потоки, ожидающие монитора этого объекта.

(Унаследовано от Object)
PermuteArguments(MethodHandle, MethodType, Int32[])

Создает дескриптор метода, который адаптирует последовательность вызовов заданного дескриптора метода к новому типу, переупорядочение аргументов.

PrivateLookupIn(Class, MethodHandles+Lookup)

Возвращает объект подстановки с полными возможностями для эмуляции всех поддерживаемых поведения байт-кода, включая частный доступ к целевому классу.

PublicLookup()

Lookup lookup object Возвращает значение, которое является доверенным минимально.

ReflectAs(Class, MethodHandle)

Выполняет снятый "трещина" прямого дескриптора метода.

SetHandle(IntPtr, JniHandleOwnership)

Задает свойство Handle.

(Унаследовано от Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

Этот класс состоит исключительно из статических методов, которые работают с дескрипторами методов или возвращаются.

(Унаследовано от JavaObject)
SpreadInvoker(MethodType, Int32)

Создает дескриптор метода, который вызовет любой дескриптор метода заданного type, с заданным числом конечных аргументов, замененных одним Object[] конечным массивом.

TableSwitch(MethodHandle, MethodHandle[])

Этот класс состоит исключительно из статических методов, которые работают с дескрипторами методов или возвращаются.

ThrowException(Class, Class)

Создает дескриптор метода, который будет вызывать исключения заданного.exType

ToArray<T>()

Создает управляемый массив из этого Java оболочки массива.

(Унаследовано от Object)
ToString()

Возвращает строковое представление объекта.

(Унаследовано от Object)
TryFinally(MethodHandle, MethodHandle)

Делает дескриптор метода, который адаптирует target дескриптор метода, завернув его в try-finally блок.

UnregisterFromRuntime()

Отменяет регистрацию этого Java однорангового узла из среды выполнения взаимодействия.

(Унаследовано от Object)
VarHandleExactInvoker(VarHandle+AccessMode, MethodType)

Этот класс состоит исключительно из статических методов, которые работают с дескрипторами методов или возвращаются.

VarHandleInvoker(VarHandle+AccessMode, MethodType)

Этот класс состоит исключительно из статических методов, которые работают с дескрипторами методов или возвращаются.

Wait()

Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, путем <><уведомления/>em или <эм>прерванного</em.>

(Унаследовано от Object)
Wait(Int64, Int32)

Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, при <>получении уведомления</>em или <>эм прерваны< или> до тех пор, пока не истекло определенное количество реального времени.

(Унаследовано от Object)
Wait(Int64)

Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, при <>получении уведомления</>em или <>эм прерваны< или> до тех пор, пока не истекло определенное количество реального времени.

(Унаследовано от Object)
WhileLoop(MethodHandle, MethodHandle, MethodHandle)

while Создает цикл из инициализатора, текста и предиката.

Zero(Class)

Создает дескриптор константного метода запрошенного возвращаемого типа, который возвращает значение по умолчанию для этого типа при каждом вызове.

Явные реализации интерфейса

Имя. Описание
IJavaPeerable.Disposed()

Этот класс состоит исключительно из статических методов, которые работают с дескрипторами методов или возвращаются.

(Унаследовано от JavaObject)
IJavaPeerable.Finalized()

Этот класс состоит исключительно из статических методов, которые работают с дескрипторами методов или возвращаются.

(Унаследовано от JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

Этот класс состоит исключительно из статических методов, которые работают с дескрипторами методов или возвращаются.

(Унаследовано от JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Этот класс состоит исключительно из статических методов, которые работают с дескрипторами методов или возвращаются.

(Унаследовано от JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Этот класс состоит исключительно из статических методов, которые работают с дескрипторами методов или возвращаются.

(Унаследовано от JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

Этот класс состоит исключительно из статических методов, которые работают с дескрипторами методов или возвращаются.

(Унаследовано от JavaObject)

Методы расширения

Имя. Описание
GetJniTypeName(IJavaPeerable)

Возвращает имя JNI типа экземпляра self.

JavaAs<TResult>(IJavaPeerable)

Попробуйте принуждать к типуself, проверяяTResult, является ли приведение допустимым на стороне Java.

JavaCast<TResult>(IJavaObject)

Выполняет преобразование типа, проверяемого средой выполнения Android.

JavaCast<TResult>(IJavaObject)

Этот класс состоит исключительно из статических методов, которые работают с дескрипторами методов или возвращаются.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Попробуйте принуждать к типуself, проверяяTResult, является ли приведение допустимым на стороне Java.

Применяется к