2016-06-24 13 views
-2

JVMがnotserializableexceptionをスローする条件を説明することができます。上記の場合でJVMがnotserializableexceptionをスローする条件は何ですか?

exmaple

class Emp implemenst Serializable 
{ 
    Address address = new Address(); 
} 

class Address 
{ 
    Strign address; 
} 

アドレスクラスはシリアライズではないので、JVMは例外がスローされますでしょうか?

誰でも説明できますか?

+1

http://stackoverflow.com/questions/13895867/java-io-notserializableexception – Hosseini

答えて

1

AddressはSerializableを実装していないので、実装する必要があります。つまり、Empの内部にあるアドレスをトランジェントとしてマークする必要があります。

はここで読む:

https://en.wikibooks.org/wiki/Java_Programming/Keywords/transient - メンバーはSerializableを実装していないか、一過性でないない場合> Javaが例外をスローします。

+0

同時に、従業員がアドレスクラスを拡張すると、例外をスローしません。なぜですか(私はそれが実際ではないことを知っています例) –

1

Javaでオブジェクトをシリアル化する場合、そのオブジェクト(およびフィールドなど)の各フィールドはSerializableインターフェイスを実装する必要があります。各オブジェクトは別々にシリアライズされています。

Javaがあなたのケースでこの例外をスローする理由は何ですか?fiedの1つはSerializableではありません。

関連する問題