-1

たとえば、53 個のフィールドを持つ GameStartegy クラスがあり、すべてのタイプが Strategy などの 1 つのインターフェイスであり、これらのフィールドの 1 つが Date であり、オブジェクトの作成時に初期化されるという質問があります。シリアライズ可能なオブジェクト ?? 日付のようなすべてのフィールドをシリアル化する必要がありますか? ありがとう

4

3 に答える 3

1

Serializableクラスがインターフェイスを 実装している限り、シリアライズ可能です。

Java でのシリアル化の概要は次のとおりです。

http://www.javacoffeebreak.com/articles/serialization/index.html

于 2010-01-21T20:31:54.077 に答える
0

さて、java.util.DateはSerializableなので、問題にはならないはずです。

保存する必要のないメンバーフィールドがある場合は、それらを一時的な一時メンバーがシリアル化されないようにすることができます。だからあなたはこのようなクラスを持つことができます

class A implements Serializable{
   int a;
   transient NonSerialzableObject n;
}

それはうまくいくはずです。

次の関数を実装して、カスタムシリアル化関数を作成することもできます。

 private void writeObject(java.io.ObjectOutputStream out) throws IOException
 private void readObject(java.io.ObjectInputStream in) throws IOException, ClassNotFoundException;
于 2010-01-21T20:36:47.503 に答える
0

最初に、クラスがそのインターフェイスを実装したら、マークアップインターフェイスであるシリアル化可能なインターフェイスを実装する必要があります。その後、シリアル化可能なオブジェクトを持つことができます...

于 2010-01-21T20:34:24.140 に答える