IJavaPeerable Интерфейс

Определение

Поддержка использования экземпляров объектов Java.

public interface IJavaPeerable : IDisposable
type IJavaPeerable = interface
    interface IDisposable
Производный
Реализации

Комментарии

Интерфейс IJavaPeerable предоставляет доступ к экземпляру объекта Java, вызову членов в этом экземпляре Java, управлению временем существования этого экземпляра объекта и обратным вызовом при удалении или завершении оболочки. Разрешены следующие операции:

  • Доступ к экземпляру PeerReference объекта доступен через свойство. :
  • Доступ к членам и вызов доступны через JniPeerMembers свойство. :
  • Управление временем существования объекта с помощью Java.Interop.IJavaPeerable.Dispose методов и DisposeUnlessReferenced() методов. :
  • Значение visibilty управляется с помощью Java.Interop.IJavaPeerable.DisposeUnlessRegistered. :
  • Обратные вызовы удаления и завершения с помощью Disposed() методов и Finalized() методов. :
<block subset="none" type="note">

НЕ РЕАЛИЗУЙТЕ ЭТОТ ИНТЕРФЕЙС.

Реализации этого интерфейса не используются без PeerReference реализации, которая возвращает значение, отличноеdefault(JniObjectReference) от значения, соответствующего null Java виртуальной машине. Хотя это можно сделать, это часто не происходит, что приводит к "непредвиденным" NullPointerException ошибкам из Java. Кроме того, хотя вы можете реализовать PeerReference, любая реализация не будет соответствовать сборщику мусора, что приведет к утечкам памяти или дополнительной работе по очистке значений.

</Блок>

Свойства

Имя Описание
JniIdentityHashCode

Возвращает значение java.lang.System.identityHashCode() для упаковаемого экземпляра.

JniManagedPeerState

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

JniObjectReferenceControlBlock

Поддержка использования экземпляров объектов Java.

JniPeerMembers

Поддержка доступа к членам и вызовов.

PeerReference

JniObjectReference Возвращает экземпляр объекта в оболочке Java.

Методы

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

Вызывается при удалении экземпляра.

DisposeUnlessReferenced()

Если нет невыполненных ссылок на этот экземпляр, то вызывается Dispose(); в противном случае ничего не делает.

Finalized()

Вызывается при завершении экземпляра.

SetJniIdentityHashCode(Int32)

Задайте значение, возвращаемое JniIdentityHashCode.

SetJniManagedPeerState(JniManagedPeerStates)

Поддержка использования экземпляров объектов Java.

SetPeerReference(JniObjectReference)

Задайте значение, возвращаемое PeerReference.

UnregisterFromRuntime()

Отмените регистрацию этого экземпляра, чтобы среда выполнения не возвращала ее из будущих Java.Interop.JniRuntime+JniValueManager.PeekValue вызовов.

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

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

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

JavaAs<TResult>(IJavaPeerable)

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

TryJavaCast<TResult>(IJavaPeerable, TResult)

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

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