Langage

IJavaPeerable Interface

Définition

Prise en charge de l’utilisation d’instances d’objet Java.

public interface IJavaPeerable : IDisposable
type IJavaPeerable = interface
    interface IDisposable
Dérivé
Implémente

Remarques

L’interface IJavaPeerable fournit l’accès à une instance d’objet Java, à l’appel de membres sur cette instance Java, au contrôle de la durée de vie de cette instance d’objet et aux rappels pour le moment où le wrapper est supprimé ou finalisé. Les opérations suivantes sont autorisées :

  • L’accès à l’instance d’objet est disponible via la PeerReference propriété. :
  • L’accès et l’appel de membre sont disponibles via la JniPeerMembers propriété. :
  • Contrôle de durée de vie des objets via Java.Interop.IJavaPeerable.Dispose et DisposeUnlessReferenced() méthodes. :
  • La visibilty de la valeur est contrôlée par le biais Java.Interop.IJavaPeerable.DisposeUnlessRegisteredde . :
  • Les rappels d’élimination et de finalisation par le biais des méthodes et Disposed() des Finalized() méthodes. :
<block subset="none » type="note »>

N’IMPLÉMENTEZ PAS CETTE INTERFACE.

Les implémentations de cette interface sont inutiles sans implémentation PeerReference qui retourne une valeur différentedefault(JniObjectReference), qui correspond à null la machine virtuelle Java. Bien que cela puisse être fait, il n'est pas fréquent, ce qui entraîne des erreurs « inattendues » NullPointerException de Java. En outre, même si vous pouvez implémenter PeerReference, toute implémentation ne s’intègre pas à un garbage collector, ce qui entraîne des fuites de mémoire ou un travail supplémentaire pour nettoyer les valeurs.

</Bloc>

Propriétés

Nom Description
JniIdentityHashCode

Retourne la valeur de java.lang.System.identityHashCode() l’instance encapsulée.

JniManagedPeerState

État de l’homologue managé.

JniObjectReferenceControlBlock

Prise en charge de l’utilisation d’instances d’objet Java.

JniPeerMembers

Prise en charge de l’accès aux membres et de l’appel.

PeerReference

Retourne une JniObjectReference instance d’objet Java encapsulée.

Méthodes

Nom Description
Disposed()

Appelé lorsque l’instance a été supprimée.

DisposeUnlessReferenced()

S’il n’existe aucune référence en suspens à cette instance, les appels Dispose(); sinon, ne fait rien.

Finalized()

Appelé lorsque l’instance a été finalisée.

SetJniIdentityHashCode(Int32)

Définissez la valeur retournée par JniIdentityHashCode.

SetJniManagedPeerState(JniManagedPeerStates)

Prise en charge de l’utilisation d’instances d’objet Java.

SetPeerReference(JniObjectReference)

Définissez la valeur retournée par PeerReference.

UnregisterFromRuntime()

Annulez l’inscription de cette instance afin que le runtime ne le retourne pas à partir d’appels futurs Java.Interop.JniRuntime+JniValueManager.PeekValue .

Méthodes d’extension

Nom Description
GetJniTypeName(IJavaPeerable)

Obtient le nom JNI du type de l’instance self.

JavaAs<TResult>(IJavaPeerable)

Essayez de forcer self le typeTResult, en vérifiant que le forçage est valide côté Java.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Essayez de forcer self le typeTResult, en vérifiant que le forçage est valide côté Java.

S’applique à