Java™ Platform
Standard Edition 7
- サマリー:
- ネスト |
- フィールド |
- コンストラクタ |
- メソッド
- 詳細:
- フィールド |
- コンストラクタ |
- メソッド
-
- すべてのスーパーインタフェース:
- 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 メソッド (オブジェクト、文字列、配列の場合) を呼び出して、オブジェクトの内容を保存します。
|
-
-
メソッドの詳細
-
writeExternal
void writeExternal(ObjectOutput out)
throws IOException
オブジェクトが実装している writeExternal メソッドは、DataOutput クラスのメソッド (プリミティブ型の場合) および ObjectOutput クラスの writeObject メソッド (オブジェクト、文字列、配列の場合) を呼び出して、オブジェクトの内容を保存します。
- パラメータ:
out
- オブジェクトを書き込むストリーム
- 例外:
IOException
- 発生する可能性のあるすべての入出力例外を含む
-
readExternal
void readExternal(ObjectInput in)
throws IOException,
ClassNotFoundException
オブジェクトが実装している readExternal メソッドは、DataInput のメソッド (プリミティブ型の場合) および readObject のメソッド (オブジェクト、文字列、配列の場合) を呼び出すことにより、オブジェクトの内容を復元します。readExternal メソッドは、writeExternal メソッドで書き込んだときと同じシーケンス、同じ型によって値を読み込まなければいけません。
- パラメータ:
in
- オブジェクトを復元するためのデータ読み込み元のストリーム
- 例外:
IOException
- 入出力エラーが発生した場合
ClassNotFoundException
- 復元されているオブジェクトのクラスが見つからない場合。
Java™ Platform
Standard Edition 7
- サマリー:
- ネスト |
- フィールド |
- コンストラクタ |
- メソッド
- 詳細:
- フィールド |
- コンストラクタ |
- メソッド
バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.