IExternalizable インターフェイス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
Externalizable インスタンスのクラスの ID のみがシリアル化ストリームに書き込まれ、そのインスタンスの内容を保存および復元するのは クラスの責任です。
[Android.Runtime.Register("java/io/Externalizable", "", "Java.IO.IExternalizableInvoker")]
public interface IExternalizable : IDisposable, Java.Interop.IJavaPeerable, Java.IO.ISerializable
[<Android.Runtime.Register("java/io/Externalizable", "", "Java.IO.IExternalizableInvoker")>]
type IExternalizable = interface
interface ISerializable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- 属性
- 実装
注釈
Externalizable インスタンスのクラスの ID のみがシリアル化ストリームに書き込まれ、そのインスタンスの内容を保存および復元するのは クラスの責任です。
Externalizable インターフェイスの writeExternal メソッドと readExternal メソッドは、 クラスによって実装され、クラスがオブジェクトとそのスーパータイプのストリームの形式と内容を完全に制御できます。 これらのメソッドは、その状態を保存するために、スーパータイプと明示的に調整する必要があります。 これらのメソッドは、writeObject メソッドと readObject メソッドのカスタマイズされた実装よりも優先されます。<Br>
オブジェクトのシリアル化では、Serializable インターフェイスと Externalizable インターフェイスが使用されます。 オブジェクトの永続化メカニズムでも、それらを使用できます。 格納する各オブジェクトは、Externalizable インターフェイスについてテストされます。 オブジェクトが Externalizable をサポートしている場合は、writeExternal メソッドが呼び出されます。 オブジェクトが Externalizable をサポートせず、Serializable を実装している場合、オブジェクトは ObjectOutputStream を使用して保存されます。 <br> Externalizable オブジェクトが再構築されると、public no-arg コンストラクターを使用してインスタンスが作成され、その後 readExternal メソッドが呼び出されます。 シリアル化可能なオブジェクトは、ObjectInputStream から読み取ることによって復元されます。<Br>
Externalizable インスタンスは、Serializable インターフェイスに記載されている writeReplace メソッドと readResolve メソッドを使用して、置換オブジェクトを指定できます。<Br>
1.1 に追加されました。
の java.io.Externalizable
Java ドキュメント。
このページの一部は、によって作成および共有された作業に基づく変更であり、に記載されている条件に従って使用されます。
プロパティ
Handle |
基になる Android オブジェクトの JNI 値を取得します。 (継承元 IJavaObject) |
JniIdentityHashCode |
ラップされたインスタンスの の |
JniManagedPeerState |
マネージド ピアの状態。 (継承元 IJavaPeerable) |
JniPeerMembers |
メンバー アクセスと呼び出しのサポート。 (継承元 IJavaPeerable) |
PeerReference |
JniObjectReferenceラップされた Java オブジェクト インスタンスの を返します。 (継承元 IJavaPeerable) |
メソッド
Disposed() |
インスタンスが破棄されたときに呼び出されます。 (継承元 IJavaPeerable) |
DisposeUnlessReferenced() |
このインスタンスへの未処理の参照がない場合は、 を呼び出 |
Finalized() |
インスタンスが終了したときに呼び出されます。 (継承元 IJavaPeerable) |
ReadExternal(IObjectInput) |
オブジェクトは readExternal メソッドを実装し、プリミティブ型の場合は DataInput のメソッドを呼び出し、オブジェクト、文字列、配列の場合は readObject を呼び出して内容を復元します。 |
SetJniIdentityHashCode(Int32) |
によって返される値を |
SetJniManagedPeerState(JniManagedPeerStates) |
Externalizable インスタンスのクラスの ID のみがシリアル化ストリームに書き込まれ、そのインスタンスの内容を保存および復元するのは クラスの責任です。 (継承元 IJavaPeerable) |
SetPeerReference(JniObjectReference) |
によって返される値を |
UnregisterFromRuntime() |
ランタイムが今後 Java.Interop.JniRuntime+JniValueManager.PeekValue の呼び出しから返されないように、このインスタンスの登録を解除します。 (継承元 IJavaPeerable) |
WriteExternal(IObjectOutput) |
オブジェクトは writeExternal メソッドを実装し、そのプリミティブ値に対して DataOutput のメソッドを呼び出すか、オブジェクト、文字列、および配列に対して ObjectOutput の writeObject メソッドを呼び出して、内容を保存します。 |
拡張メソッド
JavaCast<TResult>(IJavaObject) |
Android ランタイムチェック型変換を実行します。 |
JavaCast<TResult>(IJavaObject) |
Externalizable インスタンスのクラスの ID のみがシリアル化ストリームに書き込まれ、そのインスタンスの内容を保存および復元するのは クラスの責任です。 |
GetJniTypeName(IJavaPeerable) |
Externalizable インスタンスのクラスの ID のみがシリアル化ストリームに書き込まれ、そのインスタンスの内容を保存および復元するのは クラスの責任です。 |
ReadExternalAsync(IExternalizable, IObjectInput) |
Externalizable インスタンスのクラスの ID のみがシリアル化ストリームに書き込まれ、そのインスタンスの内容を保存および復元するのは クラスの責任です。 |
WriteExternalAsync(IExternalizable, IObjectOutput) |
Externalizable インスタンスのクラスの ID のみがシリアル化ストリームに書き込まれ、そのインスタンスの内容を保存および復元するのは クラスの責任です。 |