目次 | 前の項目 | 次の項目 | Java オブジェクト直列化仕様 バージョン 5.0 |
2004 年 7 月 24 日 JavaTM 2 SDK, Standard Edition, v5.0 Beta 1 での変更
serialVersionUID
値の計算で使用されるクラス修飾子フラグの仕様を、「4.6 ストリーム固有識別子」に追加しました。
2001 年 8 月 16 日 JavaTM 2 SDK, Standard Edition, v1.4 Beta 2 での変更
readObjectNoData
のサポートを追加しました。これは、クラス定義メソッド readObject で対応できない場合に直列化可能クラスのフィールドを初期化するために使用します。「3.5 readObjectNoData メソッド」および付録 A 「オブジェクト直列化におけるセキュリティ」を参照してください。
ObjectOutputStream.writeUnshared
および ObjectInputStream.readUnshared
は、直列化復元されたオブジェクトへの一意参照を保証する機構を提供します。「2.1 ObjectOutputStream クラス」、「3.1 ObjectInputStream クラス」、および付録 A 「オブジェクト直列化におけるセキュリティ」を参照してください。
ObjectOutputStream
および ObjectInputStream
の単一引数コンストラクタにおけるセキュリティチェックを文書化しました。「2.1 ObjectOutputStream クラス」および「3.1 ObjectInputStream クラス」を参照してください。
writeObject
メソッドは、任意指定のデータを書き込む前に ObjectOutputStream.defaultWriteObject
または writeFields
を一度呼び出す必要があること、およびクラス定義の readObject
メソッドは、任意指定のデータを読み込む前に ObjectInputStream.defaultReadObject
または readFields
を一度呼び出す必要があることを明示しました。「2.3 writeObject メソッド」および「3.4 readObject メソッド」を参照してください。
readObject
メソッドまたは readExternal
メソッドが利用可能なデータの範囲を超える読み取り操作を試行したときの ObjectInputStream
の動作を明示しました。「3.4 readObject メソッド」および「3.6 readExternal メソッド」を参照してください。
1999 年 7 月 30 日 JavaTM 2 SDK, Standard Edition, v1.3 Beta での変更
String
オブジェクトを記述する機能を追加しました。「6.2 ストリーム要素」を参照してください。
ObjectOutputStream.writeClassDescriptor
および ObjectInputStream.readClassDescriptor
を使って、ObjectStreamClass
クラス記述子の直列化表現をカスタマイズできます。「2.1 ObjectOutputStream クラス」および「3.1 ObjectInputStream クラス」を参照してください。
1998 年 9 月 30 日 JDKTM 1.2 Beta4 RC1 での変更
1998 年 6 月 22 日 JDKTM 1.2 Beta4 での変更
java.io
インタフェースの Replaceable
および Resolvable
を削除しました。java.io.Serializable
に置き換える必要があります。直列化可能クラスが writeReplace
および readResolve
メソッドを定義する場合は、直列化はリフレクションを使ってこれらのメソッドを呼び出します。「2.5 writeReplace メソッド」および「3.7 readResolve メソッド」を参照してください。
serialPersistentFields
では、private を宣言しなければなりません。「1.5 クラスの直列化可能なフィールドの指定」を参照してください。
serialVersionUID
の算出に関する手順については、「4.6 ストリーム固有識別子」で明示しました。
1998 年 2 月 6 日 JDKTM 1.2 Beta 3 での変更
Externalizable
オブジェクトのクラスが利用できない場合でも、ストリーム内の Externalizable
オブジェクトを使ってスキップを可能にする Externalizable
オブジェクトの新しい形式を示すため、STREAM_PROTOCOL_2
バージョンを追加しました。互換性の問題については、「6.3 ストリームプロトコルのバージョン」を参照してください。
ObjectInputStream.resolveClass
メソッドは、ストリーム内のクラス名とは別のパッケージのローカルクラスを返すことができます。この機能により、リリース間でパッケージ名を変えることができます。serialVersionUID
および基底クラス名は、ストリーム内とクラスのローカルバージョン内で同じである必要があります。「3.1 ObjectInputStream クラス」を参照してください。
String
または array
オブジェクトの置換が可能となります。「2.1 ObjectOutputStream クラス」および「3.1 ObjectInputStream クラス」を参照してください。
1997 年 9 月 4 日 JDKTM 1.2 Beta1 での変更
ObjectInputStream.enableReplace
メソッドおよび ObjectOutputStream.enableResolve
メソッド内で SerializablePermission "enableSubstitution"
がチェックされます。「2.1 ObjectOutputStream クラス」および「3.1 ObjectInputStream クラス」を参照してください。
IOException
がストリームに書き込まれるように、writeObject
の例外ハンドラを変更しました。「2.1 ObjectOutputStream クラス」を参照してください。
1997 年 7 月 3 日 JDKTM 1.2 Alpha での変更
目次 | 前の項目 | 次の項目 | Java オブジェクト直列化仕様 バージョン 5.0 |
Copyright © 2004 Sun Microsystems, Inc. All rights reserved