目次 | 前の項目 | 次の項目 | Java オブジェクト直列化仕様 |
JDKTM 1.2 では、直列化ストリーム形式を変更する必要がありました。JDKTM 1.2 は JDKTM 1.1 のマイナーリリースとの下位互換性がありません。下位互換性が必要な場合に備え、直列化ストリームの 書き込み時に、どの PROTOCOL_VERSION を使用するかを示す機能が追加されています。メソッドObjectOutputStream.useProtocolVersion
は、直列化ストリームの書き込みに使うプロトコルのバージョンをパラメータにとります。
JDKTM 1.2 は、デフォルトでは
ObjectStreamConstants.PROTOCOL_VERSION_1
初期のストリーム形式を示します。
ObjectStreamConstants.PROTOCOL_VERSION_2
新しい外部データ形式を示します。プリミティブデータはブロックデータモードで書き込まれ、 TC_ENDBLOCKDATA で終了します。ブロックデータ境界は標準化されました。ブロックデータモードで書き込まれたプリミティブデータは、 1024 バイトのデータのブロックを超えないように標準のデータ形式に戻されます。この変更の利点は、ストリ ーム内の直列化データ形式の仕様を強化することです。この変更は、完全に下位および上位互換性があり ます。
PROTOCOL_VERSION_2
を書き込みます。 JDKTM 1.1 は、デフォルトでは
PROTOCOL_VERSION_1
を書き込みます。
JDKTM 1.1.7 以降では、両方のバージョンを読み取ることができます。
JDKTM 1.1.7
より前のリリースでは、PROTOCOL_VERSION_1
しか読み取ることができません。