Java(tm) Platform
Standard Edition 8
- サマリー:
- ネスト |
- フィールド |
- コンストラクタ |
- メソッド
- 詳細:
- フィールド |
- コンストラクタ |
- メソッド
-
- すべてのスーパー・インタフェース:
- Serializable
- 既知のすべてのサブインタフェース:
- RemoteRef, ServerRef
- 既知のすべての実装クラス:
- ActivationDataFlavor, DataFlavor, MimeType, MLet, PrivateMLet
public interface Externalizable
extends Serializable
Externalizableインスタンスのクラスのアイデンティティが直列化ストリームに書き込まれるだけで、そのインスタンスの内容を保存および格納するのはクラスの責任です。クラスは、ExternalizableインタフェースのwriteExternalメソッドとreadExternalメソッドを実装することによって、オブジェクトとそのスーパー・タイプのストリームの形式と内容を十分に制御できるようになります。これらのメソッドは明示的にスーパー・タイプと連携して、その状態を保存しなければいけません。これらのメソッドは、writeObjectメソッドとreadObjectメソッドのカスタマイズされた実装よりも優先されます。
Serializationオブジェクトは、SerializableインタフェースとExternalizableインタフェースを使います。オブジェクト持続性のメカニズムも、そうしたインタフェースを使うことができます。格納される各オブジェクトは、Externalizableインタフェースのためにテストされます。オブジェクトがExternalizableをサポートする場合、writeExternalメソッドが呼び出されます。オブジェクトがExternalizableインタフェースをサポートせず、Serializableインタフェースを実装する場合、オブジェクトはObjectOutputStreamを使って保存されます。
Externalizableオブジェクトが再構築されると、引数なしのpublicコンストラクタを使ってインスタンスが生成され、readExternalメソッドが呼び出されます。直列化可能オブジェクトを復元するには、ObjectInputStreamから読み込みます。
Externalizableのインスタンスは、直列化可能インタフェースに記載されているwriteReplaceメソッドとreadResolveメソッドによって代替オブジェクトを指定できます。
- 導入されたバージョン:
- JDK1.1
- 関連項目:
ObjectOutputStream
、ObjectInputStream
、ObjectOutput
、ObjectInput
、Serializable
-
-
メソッドのサマリー
すべてのメソッド インスタンス・メソッド 抽象メソッド
修飾子と型 |
メソッドと説明 |
void |
readExternal(ObjectInput in)
オブジェクトが実装しているreadExternalメソッドは、DataInputのメソッド(プリミティブ型の場合)およびreadObjectのメソッド(オブジェクト、文字列、配列の場合)を呼び出すことにより、オブジェクトの内容を復元します。
|
void |
writeExternal(ObjectOutput out)
オブジェクトが実装しているwriteExternalメソッドは、DataOutputクラスのメソッド(プリミティブ型の場合)およびObjectOutputクラスのwriteObjectメソッド(オブジェクト、文字列、配列の場合)を呼び出して、オブジェクトの内容を保存します。
|
-
-
メソッドの詳細
-
readExternal
void readExternal(ObjectInput in)
throws IOException,
ClassNotFoundException
オブジェクトが実装しているreadExternalメソッドは、DataInputのメソッド(プリミティブ型の場合)およびreadObjectのメソッド(オブジェクト、文字列、配列の場合)を呼び出すことにより、オブジェクトの内容を復元します。readExternalメソッドは、writeExternalメソッドで書き込んだときと同じシーケンス、同じ型によって値を読み込まなければいけません。
- パラメータ:
in
- オブジェクトを復元するためのデータ読込み元のストリーム
- 例外:
IOException
- 入出力エラーが発生した場合
ClassNotFoundException
- 復元されているオブジェクトのクラスが見つからない場合。
Java(tm) Platform
Standard Edition 8
- サマリー:
- ネスト |
- フィールド |
- コンストラクタ |
- メソッド
- 詳細:
- フィールド |
- コンストラクタ |
- メソッド
バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.