3

シリアル化について少し混乱しています。

私はクラスを持っています。それをコンテナと呼びましょう。Container クラスの変数には、他のクラス (A、B、C など) の ArrayList が含まれます。

コンテナをシリアル化して保存する場合、それを読み戻した後(明確にするために、その部分を行う方法を理解しています)、クラスA、Bなどの同じインスタンスにアクセスできますか、それともアクセスする必要がありますか?個別に連載?さらに、A、BなどはSerializableを実装する必要がありますか?それはコンテナでカバーされていますか?

前もって感謝します

4

2 に答える 2

3

これは、Collection使用している がどのようにシリアル化されているかによって異なります。

を使用している場合はArrayList、 内のすべてのアイテムをシリアル化しますList

コンテンツをシリアル化するには、コンテンツも必要です。implement Serializableそうでない場合は、マークを付ける必要がありますtransient

だから、あなたの2つの質問に答えるために:

  • 1) Container をシリアル化して保存するとしたら、クラス A、B の同じインスタンスにアクセスできますか?
    はい。
  • 2) A、B などは Serializable を実装する必要がありますか?
    はい。
于 2013-05-16T03:13:54.303 に答える
0

シリアライゼーションとは、オブジェクトをストレージ メディア (ファイルやメモリ バッファーなど) に保存するプロセス、またはネットワーク接続を介してバイナリ形式で送信するプロセスです。シリアル化されたオブジェクトは JVM に依存せず、任意の JVM で再シリアル化でき ます。ここで良い例を読んでください。

.

于 2013-05-16T02:59:26.240 に答える