В чем разница между readObject
и defaultReadObject
в классе ObjectInputStream
? Я не могу найти очень много информации о различии.java object serialization readObject/defaultReadObject
9
A
ответ
22
defaultReadObject()
вызывает механизм десериализации по умолчанию и используется, когда вы определяете метод readObject()
в своем классе Serializable
. Другими словами, когда у вас есть пользовательская логика десериализации, вы можете вернуться к сериализации по умолчанию, которая будет десериализовать ваши нестатические, непереходные поля. Например:
public class SomeClass implements Serializable {
private String fld1;
private int fld2;
private transient String fld3;
private void readObject(java.io.ObjectInputStream stream)
throws IOException, ClassNotFoundException {
stream.defaultReadObject(); //fills fld1 and fld2;
fld3 = Configuration.getFooConfigValue();
}
]
С другой стороны, readObject()
используются при создании ObjectInputStream
, внешне от десериализованного объекта и хотят прочитать объект, который был ранее сериализован:
ObojectInputStream stream = new ObjectInputStream(aStreamWithASerializedObject);
Object foo = (Foo) stream.readObject();
Смежные вопросы
- 1. Java Serialization Object
- 2. Object Serialization
- 3. Apache Spark Object Serialization с Java
- 4. C# Object Binary Serialization
- 5. Object-c json serialization
- 6. C++ Object Serialization
- 7. Java Serialization
- 8. Swift Generic Object/JSON Serialization
- 9. Java Serialization
- 10. Ошибка Java Serialization
- 11. java static variable serialization
- 12. Java Serialization различная версия Java
- 13. as3 object serialization (to as3 code)
- 14. Linux -> C++ code: Object Serialization
- 15. Newtonsoft.JSON Serialization Array, Object или Null
- 16. Json serialization для Object Data Type
- 17. python json object serialization странные результаты
- 18. Уточнение на Java Serialization
- 19. Версии Serialization в Java
- 20. Java Serialization vs XML
- 21. Java: Generic JAXB Serialization
- 22. Java Serialization - класс оболочки
- 23. java serialization и inheritance
- 24. java serialization - определение класса persic
- 25. В чем разница между Serialization Spark и Java Serialization?
- 26. java serialization random access, очень странная вещь!
- 27. Java xml serialization null handling
- 28. Байт-массив java xml serialization
- 29. Производительность Java Serialization относительно GWT
- 30. Java Serialization 1.4 vs 1.6
Как остановить readObject, бросая исключение EOF? –
@Aizaz вы не можете. Просто поймайте его. – Bozho