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>
オブジェクトのシリアル化では、シリアル化可能なインターフェイスと外部化可能なインターフェイスが使用されます。 オブジェクト永続化メカニズムでも使用できます。 格納する各オブジェクトは、Externalizable インターフェイスについてテストされます。 オブジェクトが Externalizable をサポートしている場合は、writeExternal メソッドが呼び出されます。 オブジェクトが Externalizable をサポートせず、Serializable を実装している場合、オブジェクトは ObjectOutputStream を使用して保存されます。 <br> Externalizable オブジェクトが再構築されると、パブリック引数なしのコンストラクターを使用してインスタンスが作成され、その後 readExternal メソッドが呼び出されます。 シリアル化可能なオブジェクトは、ObjectInputStream.< から読み取ることによって復元されます。br>
Externalizable インスタンスは、Serializable interface.< に記載されている writeReplace メソッドと readResolve メソッドを使用して置換オブジェクトを指定できます。br>
1.1 で追加されました。
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。
プロパティ
| 名前 | 説明 |
|---|---|
| Handle |
基になる Android オブジェクトの JNI 値を取得します。 (継承元 IJavaObject) |
| JniIdentityHashCode |
ラップされたインスタンスの |
| JniManagedPeerState |
マネージド ピアの状態。 (継承元 IJavaPeerable) |
| JniObjectReferenceControlBlock |
Externalizable インスタンスのクラスの ID のみがシリアル化ストリームに書き込まれ、そのインスタンスの内容を保存および復元するのはクラスの役割です。 (継承元 IJavaPeerable) |
| JniPeerMembers |
メンバー アクセスと呼び出しのサポート。 (継承元 IJavaPeerable) |
| PeerReference |
ラップされたJava オブジェクト インスタンスのJniObjectReferenceを返します。 (継承元 IJavaPeerable) |
メソッド
| 名前 | 説明 |
|---|---|
| Disposed() |
インスタンスが破棄されたときに呼び出されます。 (継承元 IJavaPeerable) |
| DisposeUnlessReferenced() |
このインスタンスへの未処理の参照がない場合は、 |
| Finalized() |
インスタンスが終了したときに呼び出されます。 (継承元 IJavaPeerable) |
| ReadExternal(IObjectInput) |
オブジェクトは、プリミティブ型の場合は DataInput のメソッドを呼び出し、オブジェクト、文字列、配列の場合は readObject を呼び出して、その内容を復元する readExternal メソッドを実装します。 |
| SetJniIdentityHashCode(Int32) |
|
| SetJniManagedPeerState(JniManagedPeerStates) |
Externalizable インスタンスのクラスの ID のみがシリアル化ストリームに書き込まれ、そのインスタンスの内容を保存および復元するのはクラスの役割です。 (継承元 IJavaPeerable) |
| SetPeerReference(JniObjectReference) |
|
| UnregisterFromRuntime() |
ランタイムが将来の Java.Interop.JniRuntime+JniValueManager.PeekValue 呼び出しから返されないように、このインスタンスの登録を解除します。 (継承元 IJavaPeerable) |
| WriteExternal(IObjectOutput) |
オブジェクトは、そのプリミティブ値に対して DataOutput のメソッドを呼び出すか、オブジェクト、文字列、配列に対して ObjectOutput の writeObject メソッドを呼び出すことによって、内容を保存する writeExternal メソッドを実装します。 |
拡張メソッド
| 名前 | 説明 |
|---|---|
| GetJniTypeName(IJavaPeerable) |
インスタンス |
| JavaAs<TResult>(IJavaPeerable) |
|
| JavaCast<TResult>(IJavaObject) |
Android ランタイムチェック型変換を実行します。 |
| JavaCast<TResult>(IJavaObject) |
Externalizable インスタンスのクラスの ID のみがシリアル化ストリームに書き込まれ、そのインスタンスの内容を保存および復元するのはクラスの役割です。 |
| ReadExternalAsync(IExternalizable, IObjectInput) |
Externalizable インスタンスのクラスの ID のみがシリアル化ストリームに書き込まれ、そのインスタンスの内容を保存および復元するのはクラスの役割です。 |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
|
| WriteExternalAsync(IExternalizable, IObjectOutput) |
Externalizable インスタンスのクラスの ID のみがシリアル化ストリームに書き込まれ、そのインスタンスの内容を保存および復元するのはクラスの役割です。 |