2011-07-09 48 views
6

在一個RMI程序中,我想實現Serializable接口來序列化從服務器接收的對象。 Java 6是否使用內置的序列化格式?我想知道是否有序列化格式的特定名稱。Java使用哪種序列化格式?

回答

7

是的,Java有它自己的binary serialization format。我不認爲它有一個非Java序列化的名稱[格式|協議]

+6

它不僅缺乏真實的名稱,它缺少真正的規範。我曾經對該規範實施了反序列化器,並且經常發現自己在該規範中存在模糊或遺漏。最終,重要的規範是Sun的序列化實現的輸出! –

+0

它的名字是Object Serialization,它有一個相應的規範。同意它是不完整的,特別是與RMI相關的幾個方面。 – EJP

0

你必須實現Serializable接口來做到這一點,是的。但是,如果您使用複雜的數據結構,則不能保證對象將被正確序列化。如果你的對象是由Java SE組件組成的,我不認爲你會有任何問題,你的對象將被RMI系統的反射序列化。