Condividi tramite


ISerial Interfaccia

Definizione

Indica che un campo o un metodo annotato fa parte del meccanismo di serializzazione serializzabile definito dalla specifica><> di serializzazione dell'oggetto <Java.

[Android.Runtime.Register("java/io/Serial", "", "Java.IO.ISerialInvoker", ApiSince=34)]
public interface ISerial : IDisposable, Java.Interop.IJavaPeerable, Java.Lang.Annotation.IAnnotation
[<Android.Runtime.Register("java/io/Serial", "", "Java.IO.ISerialInvoker", ApiSince=34)>]
type ISerial = interface
    interface IAnnotation
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
Attributi
Implementazioni

Commenti

Indica che un campo o un metodo annotato fa parte del meccanismo di serializzazione serializzabile definito dalla specifica><> di serializzazione dell'oggetto <Java. Questo tipo di annotazione è destinato a consentire il controllo in fase di compilazione delle dichiarazioni correlate alla serializzazione, analogo al controllo abilitato dal java.lang.Override tipo di annotazione per convalidare l'override del metodo. Serializable le classi sono incoraggiate a usare @Serial annotazioni per consentire a un compilatore di rilevare campi e metodi correlati alla serializzazione non dichiarati, dichiarazioni di errore che potrebbero essere altrimenti difficili da rilevare.

In particolare, le annotazioni di questo tipo devono essere applicate ai metodi e ai campi correlati alla serializzazione nelle classi dichiarate come Serializable. I cinque metodi correlati alla serializzazione sono:

<ul><li>private void writeObject(java.io.ObjectOutputStream stream) throws IOException<li liprivate void readObject(java.io.ObjectInputStream stream) throws IOException, ClassNotFoundException<>li>private void readObjectNoData() throws ObjectStreamException<ANY-ACCESS-MODIFIER li> ANY-ACCESS-MODIFIER<Object writeReplace() throws ObjectStreamException<>Object readResolve() throws ObjectStreamException/ul>

I due campi correlati alla serializzazione sono:

<ul>li li>private static final long serialVersionUID<><private static final ObjectStreamField[] serialPersistentFields/ul<>

I compilatori sono invitati a convalidare che un metodo o un campo contrassegnato con un'annotazione @Serial sia uno dei metodi o dei campi correlati alla serializzazione definiti dichiarati in un contesto significativo e generare un avviso se non è il caso.

Si tratta di un errore semantico per applicare questa annotazione ad altri campi o metodi, tra cui: <ul<>li>fields o metodi in una classe che non<Serializable è campi>li o metodi della dichiarazione strutturale appropriata, ma in un tipo in cui sono ineffettuali. Ad esempio, enum i tipi vengono definiti in modo serialVersionUID0L che un serialVersionUID campo dichiarato in un enum tipo venga ignorato. I cinque metodi correlati alla serializzazione identificati in precedenza vengono ignorati in modo analogo per un enum tipo.

<li>in una classe che è Externalizable: <dichiarazioni di metodo ul><li> di writeObject, readObjecte readObjectNoData<li>una dichiarazione di campo per serialPersistentFields</ul>

Mentre l'interfaccia Externalizable estende Serializable, i tre metodi e un campo precedente sono <em>not</em> usati per le classi esterni.

</ul>

Si noti che il meccanismo di serializzazione accede ai campi e ai metodi designati in modo riflettente e tali campi e metodi potrebbero essere visualizzati altrimenti inutilizzati in una Serializable classe.

Aggiunto in 14.

Documentazione Java per java.io.Serial.

Le parti di questa pagina sono modifiche in base al lavoro creato e condiviso dal Android Open Source e usato in base ai termini descritti nella .

Proprietà

Handle

Ottiene il valore JNI dell'oggetto Android sottostante.

(Ereditato da IJavaObject)
JniIdentityHashCode

Restituisce il valore di per java.lang.System.identityHashCode() l'istanza di wrapped.

(Ereditato da IJavaPeerable)
JniManagedPeerState

Stato del peer gestito.

(Ereditato da IJavaPeerable)
JniPeerMembers

Supporto per l'accesso ai membri e la chiamata.

(Ereditato da IJavaPeerable)
PeerReference

Restituisce un'istanza JniObjectReference dell'oggetto Java con wrapping.

(Ereditato da IJavaPeerable)

Metodi

AnnotationType()

Restituisce l'interfaccia di annotazione di questa annotazione.

(Ereditato da IAnnotation)
Disposed()

Chiamato quando l'istanza è stata eliminata.

(Ereditato da IJavaPeerable)
DisposeUnlessReferenced()

Se non sono presenti riferimenti in sospeso a questa istanza, chiama Dispose(); in caso contrario, non fa nulla.

(Ereditato da IJavaPeerable)
Equals(Object)

Restituisce true se l'oggetto specificato rappresenta un'annotazione equivalente logicamente a questa.

(Ereditato da IAnnotation)
Finalized()

Chiamato quando l'istanza è stata finalizzata.

(Ereditato da IJavaPeerable)
GetHashCode()

Restituisce il codice hash di questa annotazione.

(Ereditato da IAnnotation)
SetJniIdentityHashCode(Int32)

Impostare il valore restituito da JniIdentityHashCode.

(Ereditato da IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

Indica che un campo o un metodo annotato fa parte del meccanismo di serializzazione serializzabile definito dalla specifica><> di serializzazione dell'oggetto <Java.

(Ereditato da IJavaPeerable)
SetPeerReference(JniObjectReference)

Impostare il valore restituito da PeerReference.

(Ereditato da IJavaPeerable)
ToString()

Restituisce una rappresentazione stringa di questa annotazione.

(Ereditato da IAnnotation)
UnregisterFromRuntime()

Annullare la registrazione di questa istanza in modo che il runtime non lo restituirà dalle chiamate future Java.Interop.JniRuntime+JniValueManager.PeekValue .

(Ereditato da IJavaPeerable)

Metodi di estensione

JavaCast<TResult>(IJavaObject)

Esegue una conversione dei tipi controllati dal runtime Android.

JavaCast<TResult>(IJavaObject)

Indica che un campo o un metodo annotato fa parte del meccanismo di serializzazione serializzabile definito dalla specifica><> di serializzazione dell'oggetto <Java.

GetJniTypeName(IJavaPeerable)

Indica che un campo o un metodo annotato fa parte del meccanismo di serializzazione serializzabile definito dalla specifica><> di serializzazione dell'oggetto <Java.

Si applica a