2013-06-17 7 views
8

ObjectOutputStreamの書き込みメソッドのメソッドシグネチャは(マーカーについて知っ)Serializableを実装しなければならないobjとしてないのwriteObject(シリアライズOBJ)

public final void writeObject(Object obj) throws IOException 

を理由Javaのシリアライズ、writeObjectメソッド(オブジェクトOBJ)。

public final void writeObject(Serializable obj) throws IOException 

は何らかの理由があるよう なぜJava開発者は、このメソッドを書きませんか?

答えて

7

writeObjectはObjectOutputインターフェイスで定義されており、APIにはThe class that implements this interface defines how the object is writtenと記載されています。理論的にはObjectOutputStream以外の実装が存在する可能性があります。ObjectOutputStreamは、オブジェクトがシリアライズ可能である必要のない他のシリアライズ方法を使用している可能性があります。

+0

ありがとうEvgeniy Dorofeev – sailor

+0

Externizalbeとは別に、シリアル化する他の方法は何ですか? –

+1

たとえば、java.beansパッケージまたはhttp://xstream.codehaus.org/のXMLEncoder –

関連する問題